fec_initialized = 1;
}
+/** Internal FEC parameters. */
struct fec_parms {
- int k, n; /* parameters of the code */
+ /** Number of data slices. */
+ int k;
+ /** Number of slices (including redundant slices). */
+ int n;
+ /** The encoding matrix, computed by init_fec(). */
unsigned char *enc_matrix;
};
int fd;
/** The list of queued chunks for this fd. */
struct chunk_queue *cq;
+ /** The opaque structure returned by vss_add_fec_client(). */
struct fec_client *fc;
+ /** The FEC parameters for this target. */
struct fec_client_parms fcp;
};
struct fec_client_parms *fcp;
/** Used by the core FEC code. */
struct fec_parms *parms;
- /** The position of this client in \a \ref fec_client_list. */
+ /** The position of this client in the fec client list. */
struct list_head node;
/** When the first slice for this client was sent. */
struct timeval stream_start;
/**
* Return a buffer that marks the end of the stream.
*
+ * \param buf Result pointer.
* \return The length of the eof buffer.
*
* This is used for (multicast) udp streaming where closing the socket on the