
#ifndef GAMMA_DELAY_FILTER_H
#define GAMMA_DELAY_FILTER_H
#include "rtpapi.h"

/** @defgroup gamma_delay gamma delay filter
 * This filter emulates independent delays of the packets using gamma 
 * distribution as model.
 * It uses section [gamma_delay] of the configuration file "output.ini"
 * There is two used options:
 *
 *    shape = integer
 *    scale = integer
 *
 *  @{
 */


/* 
 * Structure to store internal state of the delay filter
 */

typedef struct __wr_gamma_delay_filter_state {
    int enabled;
    int shape;
    int scale;
} wr_gamma_delay_filter_state_t;

/**
 * Loss random data from input stream and pass result stream to its output.
 * This method is invoked when filter is notified.
 */
wr_errorcode_t wr_gamma_delay_filter_notify(wr_rtp_filter_t * filter, wr_event_type_t event, wr_rtp_packet_t * packet);
/** @} */

#endif
