71 typedef SaUint64T SaClmHandleT;
73 typedef SaUint32T SaClmNodeIdT;
75 #define SA_CLM_LOCAL_NODE_ID 0xffffffff
77 #define SA_CLM_MAX_ADDRESS_LENGTH 64
82 } SaClmNodeAddressFamilyT;
85 SaClmNodeAddressFamilyT family;
87 SaUint8T value[SA_CLM_MAX_ADDRESS_LENGTH];
92 SaClmNodeAddressT nodeAddress;
100 SA_CLM_NODE_NO_CHANGE = 1,
101 SA_CLM_NODE_JOINED = 2,
102 SA_CLM_NODE_LEFT = 3,
103 SA_CLM_NODE_RECONFIGURED = 4
104 } SaClmClusterChangesT;
107 SaClmClusterNodeT clusterNode;
109 } SaClmClusterNotificationT;
112 SaUint64T viewNumber;
115 } SaClmClusterNotificationBufferT;
117 typedef void (*SaClmClusterNodeGetCallbackT)(
118 SaInvocationT invocation,
119 const SaClmClusterNodeT *clusterNode,
122 typedef void (*SaClmClusterTrackCallbackT) (
123 const SaClmClusterNotificationBufferT *notificationBuffer,
124 SaUint32T numberOfMembers,
128 SaClmClusterNodeGetCallbackT saClmClusterNodeGetCallback;
129 SaClmClusterTrackCallbackT saClmClusterTrackCallback;
135 SaClmHandleT *clmHandle,
136 const SaClmCallbacksT *clmCallbacks,
137 SaVersionT *version);
141 saClmSelectionObjectGet (
142 SaClmHandleT clmHandle,
143 SaSelectionObjectT *selectionObject);
147 SaClmHandleT clmHandle,
148 SaDispatchFlagsT dispatchFlags);
152 SaClmHandleT clmHandle);
156 SaClmHandleT clmHandle,
158 SaClmClusterNotificationBufferT *notificationBuffer);
161 saClmClusterTrackStop (
162 SaClmHandleT clmHandle);
165 saClmClusterNodeGet (
166 SaClmHandleT clmHandle,
169 SaClmClusterNodeT *clusterNode);
172 saClmClusterNodeGetAsync (
173 SaClmHandleT clmHandle,
174 SaInvocationT invocation,
175 SaClmNodeIdT nodeId);