|
@@ -42,6 +42,9 @@
|
|
|
|
|
|
|
|
#define CPG_ZC_PATH_LEN 128
|
|
#define CPG_ZC_PATH_LEN 128
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_cpg_types enum
|
|
|
|
|
+ */
|
|
|
enum req_cpg_types {
|
|
enum req_cpg_types {
|
|
|
MESSAGE_REQ_CPG_JOIN = 0,
|
|
MESSAGE_REQ_CPG_JOIN = 0,
|
|
|
MESSAGE_REQ_CPG_LEAVE = 1,
|
|
MESSAGE_REQ_CPG_LEAVE = 1,
|
|
@@ -58,6 +61,9 @@ enum req_cpg_types {
|
|
|
MESSAGE_REQ_CPG_PARTIAL_MCAST = 12,
|
|
MESSAGE_REQ_CPG_PARTIAL_MCAST = 12,
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_cpg_types enum
|
|
|
|
|
+ */
|
|
|
enum res_cpg_types {
|
|
enum res_cpg_types {
|
|
|
MESSAGE_RES_CPG_JOIN = 0,
|
|
MESSAGE_RES_CPG_JOIN = 0,
|
|
|
MESSAGE_RES_CPG_LEAVE = 1,
|
|
MESSAGE_RES_CPG_LEAVE = 1,
|
|
@@ -80,6 +86,9 @@ enum res_cpg_types {
|
|
|
MESSAGE_RES_CPG_PARTIAL_SEND = 18,
|
|
MESSAGE_RES_CPG_PARTIAL_SEND = 18,
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The lib_cpg_confchg_reason enum
|
|
|
|
|
+ */
|
|
|
enum lib_cpg_confchg_reason {
|
|
enum lib_cpg_confchg_reason {
|
|
|
CONFCHG_CPG_REASON_JOIN = 1,
|
|
CONFCHG_CPG_REASON_JOIN = 1,
|
|
|
CONFCHG_CPG_REASON_LEAVE = 2,
|
|
CONFCHG_CPG_REASON_LEAVE = 2,
|
|
@@ -88,22 +97,37 @@ enum lib_cpg_confchg_reason {
|
|
|
CONFCHG_CPG_REASON_PROCDOWN = 5
|
|
CONFCHG_CPG_REASON_PROCDOWN = 5
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The lib_cpg_partial_types enum
|
|
|
|
|
+ */
|
|
|
enum lib_cpg_partial_types {
|
|
enum lib_cpg_partial_types {
|
|
|
LIBCPG_PARTIAL_FIRST = 1,
|
|
LIBCPG_PARTIAL_FIRST = 1,
|
|
|
LIBCPG_PARTIAL_CONTINUED = 2,
|
|
LIBCPG_PARTIAL_CONTINUED = 2,
|
|
|
LIBCPG_PARTIAL_LAST = 3,
|
|
LIBCPG_PARTIAL_LAST = 3,
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_cpg_name_t struct
|
|
|
|
|
+ */
|
|
|
typedef struct {
|
|
typedef struct {
|
|
|
uint32_t length __attribute__((aligned(8)));
|
|
uint32_t length __attribute__((aligned(8)));
|
|
|
char value[CPG_MAX_NAME_LENGTH] __attribute__((aligned(8)));
|
|
char value[CPG_MAX_NAME_LENGTH] __attribute__((aligned(8)));
|
|
|
} mar_cpg_name_t;
|
|
} mar_cpg_name_t;
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief swab_mar_cpg_name_t
|
|
|
|
|
+ * @param to_swab
|
|
|
|
|
+ */
|
|
|
static inline void swab_mar_cpg_name_t (mar_cpg_name_t *to_swab)
|
|
static inline void swab_mar_cpg_name_t (mar_cpg_name_t *to_swab)
|
|
|
{
|
|
{
|
|
|
swab_mar_uint32_t (&to_swab->length);
|
|
swab_mar_uint32_t (&to_swab->length);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief marshall_from_mar_cpg_name_t
|
|
|
|
|
+ * @param dest
|
|
|
|
|
+ * @param src
|
|
|
|
|
+ */
|
|
|
static inline void marshall_from_mar_cpg_name_t (
|
|
static inline void marshall_from_mar_cpg_name_t (
|
|
|
struct cpg_name *dest,
|
|
struct cpg_name *dest,
|
|
|
const mar_cpg_name_t *src)
|
|
const mar_cpg_name_t *src)
|
|
@@ -112,6 +136,11 @@ static inline void marshall_from_mar_cpg_name_t (
|
|
|
memcpy (&dest->value, &src->value, CPG_MAX_NAME_LENGTH);
|
|
memcpy (&dest->value, &src->value, CPG_MAX_NAME_LENGTH);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief marshall_to_mar_cpg_name_t
|
|
|
|
|
+ * @param dest
|
|
|
|
|
+ * @param src
|
|
|
|
|
+ */
|
|
|
static inline void marshall_to_mar_cpg_name_t (
|
|
static inline void marshall_to_mar_cpg_name_t (
|
|
|
mar_cpg_name_t *dest,
|
|
mar_cpg_name_t *dest,
|
|
|
const struct cpg_name *src)
|
|
const struct cpg_name *src)
|
|
@@ -120,12 +149,20 @@ static inline void marshall_to_mar_cpg_name_t (
|
|
|
memcpy (&dest->value, &src->value, CPG_MAX_NAME_LENGTH);
|
|
memcpy (&dest->value, &src->value, CPG_MAX_NAME_LENGTH);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_cpg_address_t struct
|
|
|
|
|
+ */
|
|
|
typedef struct {
|
|
typedef struct {
|
|
|
mar_uint32_t nodeid __attribute__((aligned(8)));
|
|
mar_uint32_t nodeid __attribute__((aligned(8)));
|
|
|
mar_uint32_t pid __attribute__((aligned(8)));
|
|
mar_uint32_t pid __attribute__((aligned(8)));
|
|
|
mar_uint32_t reason __attribute__((aligned(8)));
|
|
mar_uint32_t reason __attribute__((aligned(8)));
|
|
|
} mar_cpg_address_t;
|
|
} mar_cpg_address_t;
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief marshall_from_mar_cpg_address_t
|
|
|
|
|
+ * @param dest
|
|
|
|
|
+ * @param src
|
|
|
|
|
+ */
|
|
|
static inline void marshall_from_mar_cpg_address_t (
|
|
static inline void marshall_from_mar_cpg_address_t (
|
|
|
struct cpg_address *dest,
|
|
struct cpg_address *dest,
|
|
|
const mar_cpg_address_t *src)
|
|
const mar_cpg_address_t *src)
|
|
@@ -135,6 +172,11 @@ static inline void marshall_from_mar_cpg_address_t (
|
|
|
dest->reason = src->reason;
|
|
dest->reason = src->reason;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief marshall_to_mar_cpg_address_t
|
|
|
|
|
+ * @param dest
|
|
|
|
|
+ * @param src
|
|
|
|
|
+ */
|
|
|
static inline void marshall_to_mar_cpg_address_t (
|
|
static inline void marshall_to_mar_cpg_address_t (
|
|
|
mar_cpg_address_t *dest,
|
|
mar_cpg_address_t *dest,
|
|
|
const struct cpg_address *src)
|
|
const struct cpg_address *src)
|
|
@@ -144,6 +186,12 @@ static inline void marshall_to_mar_cpg_address_t (
|
|
|
dest->reason = src->reason;
|
|
dest->reason = src->reason;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_name_compare
|
|
|
|
|
+ * @param g1
|
|
|
|
|
+ * @param g2
|
|
|
|
|
+ * @return
|
|
|
|
|
+ */
|
|
|
static inline int mar_name_compare (
|
|
static inline int mar_name_compare (
|
|
|
const mar_cpg_name_t *g1,
|
|
const mar_cpg_name_t *g1,
|
|
|
const mar_cpg_name_t *g2)
|
|
const mar_cpg_name_t *g2)
|
|
@@ -153,12 +201,20 @@ static inline int mar_name_compare (
|
|
|
g1->length - g2->length);
|
|
g1->length - g2->length);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_cpg_iteration_description_t struct
|
|
|
|
|
+ */
|
|
|
typedef struct {
|
|
typedef struct {
|
|
|
mar_cpg_name_t group;
|
|
mar_cpg_name_t group;
|
|
|
mar_uint32_t nodeid;
|
|
mar_uint32_t nodeid;
|
|
|
mar_uint32_t pid;
|
|
mar_uint32_t pid;
|
|
|
} mar_cpg_iteration_description_t;
|
|
} mar_cpg_iteration_description_t;
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief marshall_from_mar_cpg_iteration_description_t
|
|
|
|
|
+ * @param dest
|
|
|
|
|
+ * @param src
|
|
|
|
|
+ */
|
|
|
static inline void marshall_from_mar_cpg_iteration_description_t(
|
|
static inline void marshall_from_mar_cpg_iteration_description_t(
|
|
|
struct cpg_iteration_description_t *dest,
|
|
struct cpg_iteration_description_t *dest,
|
|
|
const mar_cpg_iteration_description_t *src)
|
|
const mar_cpg_iteration_description_t *src)
|
|
@@ -168,11 +224,19 @@ static inline void marshall_from_mar_cpg_iteration_description_t(
|
|
|
marshall_from_mar_cpg_name_t (&dest->group, &src->group);
|
|
marshall_from_mar_cpg_name_t (&dest->group, &src->group);
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_cpg_ring_id_t struct
|
|
|
|
|
+ */
|
|
|
typedef struct {
|
|
typedef struct {
|
|
|
mar_uint32_t nodeid __attribute__((aligned(8)));
|
|
mar_uint32_t nodeid __attribute__((aligned(8)));
|
|
|
mar_uint64_t seq __attribute__((aligned(8)));
|
|
mar_uint64_t seq __attribute__((aligned(8)));
|
|
|
} mar_cpg_ring_id_t;
|
|
} mar_cpg_ring_id_t;
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief marshall_from_mar_cpg_ring_id_t
|
|
|
|
|
+ * @param dest
|
|
|
|
|
+ * @param src
|
|
|
|
|
+ */
|
|
|
static inline void marshall_from_mar_cpg_ring_id_t (
|
|
static inline void marshall_from_mar_cpg_ring_id_t (
|
|
|
struct cpg_ring_id *dest,
|
|
struct cpg_ring_id *dest,
|
|
|
const mar_cpg_ring_id_t *src)
|
|
const mar_cpg_ring_id_t *src)
|
|
@@ -181,6 +245,9 @@ static inline void marshall_from_mar_cpg_ring_id_t (
|
|
|
dest->seq = src->seq;
|
|
dest->seq = src->seq;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_join struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_join {
|
|
struct req_lib_cpg_join {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
@@ -188,31 +255,52 @@ struct req_lib_cpg_join {
|
|
|
mar_uint32_t flags __attribute__((aligned(8)));
|
|
mar_uint32_t flags __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_join struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_join {
|
|
struct res_lib_cpg_join {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_finalize struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_finalize {
|
|
struct req_lib_cpg_finalize {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_finalize struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_finalize {
|
|
struct res_lib_cpg_finalize {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_local_get struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_local_get {
|
|
struct req_lib_cpg_local_get {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_local_get struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_local_get {
|
|
struct res_lib_cpg_local_get {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_uint32_t local_nodeid __attribute__((aligned(8)));
|
|
mar_uint32_t local_nodeid __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_partial_send struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_partial_send {
|
|
struct res_lib_cpg_partial_send {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_mcast struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_mcast {
|
|
struct req_lib_cpg_mcast {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_uint32_t guarantee __attribute__((aligned(8)));
|
|
mar_uint32_t guarantee __attribute__((aligned(8)));
|
|
@@ -220,6 +308,9 @@ struct req_lib_cpg_mcast {
|
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_partial_mcast struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_partial_mcast {
|
|
struct req_lib_cpg_partial_mcast {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_uint32_t guarantee __attribute__((aligned(8)));
|
|
mar_uint32_t guarantee __attribute__((aligned(8)));
|
|
@@ -229,6 +320,9 @@ struct req_lib_cpg_partial_mcast {
|
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_mcast struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_mcast {
|
|
struct res_lib_cpg_mcast {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
@@ -245,6 +339,9 @@ struct res_lib_cpg_deliver_callback {
|
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_partial_deliver_callback struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_partial_deliver_callback {
|
|
struct res_lib_cpg_partial_deliver_callback {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
@@ -256,22 +353,34 @@ struct res_lib_cpg_partial_deliver_callback {
|
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
mar_uint8_t message[] __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_flowcontrol_callback struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_flowcontrol_callback {
|
|
struct res_lib_cpg_flowcontrol_callback {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_uint32_t flow_control_state __attribute__((aligned(8)));
|
|
mar_uint32_t flow_control_state __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_membership_get struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_membership_get {
|
|
struct req_lib_cpg_membership_get {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_membership_get struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_membership_get {
|
|
struct res_lib_cpg_membership_get {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_uint32_t member_count __attribute__((aligned(8)));
|
|
mar_uint32_t member_count __attribute__((aligned(8)));
|
|
|
mar_cpg_address_t member_list[PROCESSOR_COUNT_MAX];
|
|
mar_cpg_address_t member_list[PROCESSOR_COUNT_MAX];
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_confchg_callback struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_confchg_callback {
|
|
struct res_lib_cpg_confchg_callback {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
@@ -283,6 +392,9 @@ struct res_lib_cpg_confchg_callback {
|
|
|
// struct cpg_address joined_list[];
|
|
// struct cpg_address joined_list[];
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_totem_confchg_callback struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_totem_confchg_callback {
|
|
struct res_lib_cpg_totem_confchg_callback {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_ring_id_t ring_id __attribute__((aligned(8)));
|
|
mar_cpg_ring_id_t ring_id __attribute__((aligned(8)));
|
|
@@ -290,63 +402,99 @@ struct res_lib_cpg_totem_confchg_callback {
|
|
|
mar_uint32_t member_list[];
|
|
mar_uint32_t member_list[];
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_leave struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_leave {
|
|
struct req_lib_cpg_leave {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
|
mar_uint32_t pid __attribute__((aligned(8)));
|
|
mar_uint32_t pid __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_leave struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_leave {
|
|
struct res_lib_cpg_leave {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_iterationinitialize struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_iterationinitialize {
|
|
struct req_lib_cpg_iterationinitialize {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
mar_cpg_name_t group_name __attribute__((aligned(8)));
|
|
|
mar_uint32_t iteration_type __attribute__((aligned(8)));
|
|
mar_uint32_t iteration_type __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_iterationinitialize struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_iterationinitialize {
|
|
struct res_lib_cpg_iterationinitialize {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
hdb_handle_t iteration_handle __attribute__((aligned(8)));
|
|
hdb_handle_t iteration_handle __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_iterationnext struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_iterationnext {
|
|
struct req_lib_cpg_iterationnext {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
hdb_handle_t iteration_handle __attribute__((aligned(8)));
|
|
hdb_handle_t iteration_handle __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_iterationnext struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_iterationnext {
|
|
struct res_lib_cpg_iterationnext {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
mar_cpg_iteration_description_t description __attribute__((aligned(8)));
|
|
mar_cpg_iteration_description_t description __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The req_lib_cpg_iterationfinalize struct
|
|
|
|
|
+ */
|
|
|
struct req_lib_cpg_iterationfinalize {
|
|
struct req_lib_cpg_iterationfinalize {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
hdb_handle_t iteration_handle __attribute__((aligned(8)));
|
|
hdb_handle_t iteration_handle __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief The res_lib_cpg_iterationfinalize struct
|
|
|
|
|
+ */
|
|
|
struct res_lib_cpg_iterationfinalize {
|
|
struct res_lib_cpg_iterationfinalize {
|
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_response_header header __attribute__((aligned(8)));
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_req_coroipcc_zc_alloc_t struct
|
|
|
|
|
+ */
|
|
|
typedef struct {
|
|
typedef struct {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
size_t map_size __attribute__((aligned(8)));
|
|
size_t map_size __attribute__((aligned(8)));
|
|
|
char path_to_file[CPG_ZC_PATH_LEN] __attribute__((aligned(8)));
|
|
char path_to_file[CPG_ZC_PATH_LEN] __attribute__((aligned(8)));
|
|
|
} mar_req_coroipcc_zc_alloc_t __attribute__((aligned(8)));
|
|
} mar_req_coroipcc_zc_alloc_t __attribute__((aligned(8)));
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_req_coroipcc_zc_free_t struct
|
|
|
|
|
+ */
|
|
|
typedef struct {
|
|
typedef struct {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
size_t map_size __attribute__((aligned(8)));
|
|
size_t map_size __attribute__((aligned(8)));
|
|
|
uint64_t server_address __attribute__((aligned(8)));
|
|
uint64_t server_address __attribute__((aligned(8)));
|
|
|
} mar_req_coroipcc_zc_free_t __attribute__((aligned(8)));
|
|
} mar_req_coroipcc_zc_free_t __attribute__((aligned(8)));
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief mar_req_coroipcc_zc_execute_t struct
|
|
|
|
|
+ */
|
|
|
typedef struct {
|
|
typedef struct {
|
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
struct qb_ipc_request_header header __attribute__((aligned(8)));
|
|
|
uint64_t server_address __attribute__((aligned(8)));
|
|
uint64_t server_address __attribute__((aligned(8)));
|
|
|
} mar_req_coroipcc_zc_execute_t __attribute__((aligned(8)));
|
|
} mar_req_coroipcc_zc_execute_t __attribute__((aligned(8)));
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * @brief coroipcs_zc_header struct
|
|
|
|
|
+ */
|
|
|
struct coroipcs_zc_header {
|
|
struct coroipcs_zc_header {
|
|
|
int map_size;
|
|
int map_size;
|
|
|
uint64_t server_address;
|
|
uint64_t server_address;
|