// FRSH(FRescor ScHeduler), pronounced "fresh"
//==============================================
-#ifndef FRSH_DISTRIBUTED_TYPES_H_
-#define FRSH_DISTRIBUTED_TYPES_H_
+#ifndef FRSH_DISTRIBUTED_TYPES_H_
+#define FRSH_DISTRIBUTED_TYPES_H_
+
+/**
+ * @file frsh_distributed_types.h
+ **/
#include "frsh_opaque_types.h"
* @{
**/
-#define FRSH_DEFAULT_NETWORK_ID 1
-#define FRSH_NULL_NETWORK_ID 0
+#define FRSH_DEFAULT_NETWORK_ID 1
+#define FRSH_NULL_NETWORK_ID 0
//opaque types for frsh endpoints
* a communication-protocol-independent way. The actual address is
* obtained via a configuration dependent mapping function
**/
-typedef unsigned int frsh_network_address_t;
+typedef unsigned int frsh_network_address_t;
/**
* The port type specifies the information that is
* The actual port number is obtained via a configuration
* dependent mapping function
**/
-typedef unsigned int frsh_stream_id_t;
+typedef unsigned int frsh_stream_id_t;
/**
* Extra information protocol dependent opaque for the application.
* It can be used in different places: contract negotiation, extra
* endpoint info, extra status info...
**/
-typedef struct _protocol_info_t
-{
+typedef struct {
void *body;
int size;
} frsh_protocol_info_t;
/**
* Protocol dependent information about the status of an endpoint
**/
-typedef struct _protocol_status_t
-{
+typedef struct {
void *body;
int size;
} frsh_protocol_status_t;
+/**
+ * Protocol dependent information about extra parameters for
+ * send_endpoint definition.
+ **/
+typedef struct {
+ void *body;
+ int size;
+} frsh_send_endpoint_protocol_info_t;
+
+/**
+ * Protocol dependent information about extra parameters for
+ * receive_endpoint definition.
+ **/
+typedef struct {
+ void *body;
+ int size;
+} frsh_receive_endpoint_protocol_info_t;
+
/**
* Algorithm used when the queue is full to choose the message to reject
**/
-typedef enum _queue_rejection_policy_t
-{
+typedef enum {
/** A new message is admitted rejecting the oldest message in the
queue to make room for the newcomer **/
FRSH_QRP_OLDEST,
/**
* Queing information for endpoints
**/
-typedef struct _frsh_endpoint_queueing_info_t
-{
+typedef struct {
int queue_size; /** Size 0 means that there is no queue **/
frsh_queue_rejection_policy_t queue_policy;
} frsh_endpoint_queueing_info_t;
-typedef enum _endpoint_network_status
-{
+typedef enum {
/** Network works OK **/
FRSH_ENS_UP,
/*@}*/
-#endif /* !FRSH_DISTRIBUTED_TYPES_H_ */
+#endif /* !FRSH_DISTRIBUTED_TYPES_H_ */