#include <mama/mama.h>
Go to the source code of this file.
Typedefs | |
typedef enum mamaFtState_ | mamaFtState |
typedef enum mamaFtType_ | mamaFtType |
typedef void * | mamaFtMember |
typedef void(MAMACALLTYPE * | mamaFtMemberOnFtStateChangeCb) (mamaFtMember ftMember, const char *groupName, mamaFtState state, void *closure) |
Callback function type for MAMA fault tolerance events. More... | |
Enumerations | |
enum | mamaFtState_ { MAMA_FT_STATE_STANDBY = 0, MAMA_FT_STATE_ACTIVE = 1, MAMA_FT_STATE_UNKNOWN = 99 } |
enum | mamaFtType_ { MAMA_FT_TYPE_MULTICAST = 1, MAMA_FT_TYPE_BRIDGE = 2, MAMA_FT_TYPE_MAX = 3 } |
Functions | |
MAMAExpDLL mama_status | mamaFtMember_create (mamaFtMember *member) |
Allocate a MAMA fault tolerance group member. More... | |
MAMAExpDLL mama_status | mamaFtMember_setup (mamaFtMember member, mamaFtType fttype, mamaQueue eventQueue, mamaFtMemberOnFtStateChangeCb callback, mamaTransport transport, const char *groupName, mama_u32_t weight, mama_f64_t heartbeatInterval, mama_f64_t timeoutInterval, void *closure) |
Set up a MAMA fault tolerance group member. More... | |
MAMAExpDLL mama_status | mamaFtMember_destroy (mamaFtMember member) |
Create a MAMA fault tolerance group member. More... | |
MAMAExpDLL mama_status | mamaFtMember_activate (mamaFtMember member) |
Activate the MAMA fault tolerance group member. More... | |
MAMAExpDLL mama_status | mamaFtMember_deactivate (mamaFtMember member) |
Deactivate the MAMA fault tolerance group member. More... | |
MAMAExpDLL mama_status | mamaFtMember_isActive (const mamaFtMember member, int *result) |
Get whether the MAMA fault tolerance member is actively running (not related to its state). More... | |
MAMAExpDLL mama_status | mamaFtMember_getGroupName (const mamaFtMember member, const char **result) |
Get the group name to which this MAMA FT member belongs. More... | |
MAMAExpDLL mama_status | mamaFtMember_getWeight (const mamaFtMember member, mama_u32_t *result) |
Get the fault tolerance weight of the MAMA FT member. More... | |
MAMAExpDLL mama_status | mamaFtMember_getHeartbeatInterval (const mamaFtMember member, mama_f64_t *result) |
Get the fault tolerance heartbeat interval of the MAMA FT member. More... | |
MAMAExpDLL mama_status | mamaFtMember_getTimeoutInterval (const mamaFtMember member, mama_f64_t *result) |
Get the fault tolerance timeout interval of the MAMA FT member. More... | |
MAMAExpDLL mama_status | mamaFtMember_getHeartbeatTick (const mamaFtMember member, mama_u32_t *result) |
Get the current heartbeat tick of the MAMA FT member. More... | |
MAMAExpDLL mama_status | mamaFtMember_getClosure (const mamaFtMember member, void **result) |
Get the closure argument (provided in the mamaFtMember_create() function) of the MAMA FT member. More... | |
MAMAExpDLL mama_status | mamaFtMember_setWeight (mamaFtMember member, mama_u32_t value) |
Set the fault tolerance weight of the MAMA FT member. More... | |
MAMAExpDLL mama_status | mamaFtMember_setInstanceId (mamaFtMember member, const char *id) |
Set the instance ID of the MAMA FT member. More... | |
const MAMAExpDLL char * | mamaFtStateToString (mamaFtState state) |
Convert a fault tolerant state to a string. More... | |
typedef enum mamaFtState_ mamaFtState |
typedef enum mamaFtType_ mamaFtType |
typedef void* mamaFtMember |
typedef void( MAMACALLTYPE * mamaFtMemberOnFtStateChangeCb) (mamaFtMember ftMember, const char *groupName, mamaFtState state, void *closure) |
Callback function type for MAMA fault tolerance events.
enum mamaFtState_ |
enum mamaFtType_ |
MAMAExpDLL mama_status mamaFtMember_create | ( | mamaFtMember * | member | ) |
Allocate a MAMA fault tolerance group member.
This function is typically followed by mamaFtMember_setup() and mamaFtMember_activate().
MAMAExpDLL mama_status mamaFtMember_setup | ( | mamaFtMember | member, |
mamaFtType | fttype, | ||
mamaQueue | eventQueue, | ||
mamaFtMemberOnFtStateChangeCb | callback, | ||
mamaTransport | transport, | ||
const char * | groupName, | ||
mama_u32_t | weight, | ||
mama_f64_t | heartbeatInterval, | ||
mama_f64_t | timeoutInterval, | ||
void * | closure | ||
) |
Set up a MAMA fault tolerance group member.
This is only an initialization function. In order to actually start the fault tolerance monitoring, use mamaFtMember_activate().
MAMAExpDLL mama_status mamaFtMember_destroy | ( | mamaFtMember | member | ) |
Create a MAMA fault tolerance group member.
MAMAExpDLL mama_status mamaFtMember_activate | ( | mamaFtMember | member | ) |
Activate the MAMA fault tolerance group member.
MAMAExpDLL mama_status mamaFtMember_deactivate | ( | mamaFtMember | member | ) |
Deactivate the MAMA fault tolerance group member.
MAMAExpDLL mama_status mamaFtMember_isActive | ( | const mamaFtMember | member, |
int * | result | ||
) |
Get whether the MAMA fault tolerance member is actively running (not related to its state).
Use mamaFtMember_getState() to determine the actual state of the member.
MAMAExpDLL mama_status mamaFtMember_getGroupName | ( | const mamaFtMember | member, |
const char ** | result | ||
) |
Get the group name to which this MAMA FT member belongs.
MAMAExpDLL mama_status mamaFtMember_getWeight | ( | const mamaFtMember | member, |
mama_u32_t * | result | ||
) |
Get the fault tolerance weight of the MAMA FT member.
MAMAExpDLL mama_status mamaFtMember_getHeartbeatInterval | ( | const mamaFtMember | member, |
mama_f64_t * | result | ||
) |
Get the fault tolerance heartbeat interval of the MAMA FT member.
MAMAExpDLL mama_status mamaFtMember_getTimeoutInterval | ( | const mamaFtMember | member, |
mama_f64_t * | result | ||
) |
Get the fault tolerance timeout interval of the MAMA FT member.
MAMAExpDLL mama_status mamaFtMember_getHeartbeatTick | ( | const mamaFtMember | member, |
mama_u32_t * | result | ||
) |
Get the current heartbeat tick of the MAMA FT member.
MAMAExpDLL mama_status mamaFtMember_getClosure | ( | const mamaFtMember | member, |
void ** | result | ||
) |
Get the closure argument (provided in the mamaFtMember_create() function) of the MAMA FT member.
MAMAExpDLL mama_status mamaFtMember_setWeight | ( | mamaFtMember | member, |
mama_u32_t | value | ||
) |
Set the fault tolerance weight of the MAMA FT member.
The FT weight can be changed dynamically, if desired. The member with the highest weight will become the active member.
MAMAExpDLL mama_status mamaFtMember_setInstanceId | ( | mamaFtMember | member, |
const char * | id | ||
) |
Set the instance ID of the MAMA FT member.
The instance ID is used to uniquely identify members of a fault tolerant group. Most applications should allow the MAMA API to automatically set the instance ID and this function would not be called. If not set explicitly before activation, then the instance ID is automatically set according to the following format: {group-name}.{hex-ip-addr}.{hex-pid}. For example, if the group name is "FOO", the IP address is 192.168.187.9, and the PId is 10777, the default instance ID would be: FOO.c0a8bb9.2a19
const MAMAExpDLL char* mamaFtStateToString | ( | mamaFtState | state | ) |
Convert a fault tolerant state to a string.
state | The state to convert. |