Main Page
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
ft.h
Go to the documentation of this file.
1
/* $Id$
2
*
3
* OpenMAMA: The open middleware agnostic messaging API
4
* Copyright (C) 2011 NYSE Technologies, Inc.
5
*
6
* This library is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU Lesser General Public
8
* License as published by the Free Software Foundation; either
9
* version 2.1 of the License, or (at your option) any later version.
10
*
11
* This library is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with this library; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19
* 02110-1301 USA
20
*/
21
22
#ifndef MamaFtH__
23
#define MamaFtH__
24
25
#include <
mama/mama.h
>
26
27
#if defined(__cplusplus)
28
extern
"C"
{
29
#endif
30
31
typedef
enum
mamaFtState_
32
{
33
MAMA_FT_STATE_STANDBY
= 0,
34
MAMA_FT_STATE_ACTIVE
= 1,
35
MAMA_FT_STATE_UNKNOWN
= 99
36
}
mamaFtState
;
37
38
typedef
enum
mamaFtType_
39
{
40
MAMA_FT_TYPE_MULTICAST
= 1,
41
MAMA_FT_TYPE_BRIDGE
= 2,
42
MAMA_FT_TYPE_MAX
= 3
43
}
mamaFtType
;
44
45
typedef
void
*
mamaFtMember
;
46
47
51
typedef
void
(
52
MAMACALLTYPE
53
*mamaFtMemberOnFtStateChangeCb) (mamaFtMember ftMember,
54
const
char
*
groupName
,
55
mamaFtState
state
,
56
void
*
closure
);
57
63
MAMAExpDLL
64
extern
mama_status
65
mamaFtMember_create
(
66
mamaFtMember*
member
);
67
73
MAMAExpDLL
74
extern
mama_status
75
mamaFtMember_setup
(
76
mamaFtMember
member
,
77
mamaFtType
fttype,
78
mamaQueue
eventQueue,
79
mamaFtMemberOnFtStateChangeCb callback,
80
mamaTransport
transport,
81
const
char
* groupName,
82
mama_u32_t
weight,
83
mama_f64_t
heartbeatInterval,
84
mama_f64_t
timeoutInterval,
85
void
*
closure
);
86
90
MAMAExpDLL
91
extern
mama_status
92
mamaFtMember_destroy
(
93
mamaFtMember
member
);
94
98
MAMAExpDLL
99
extern
mama_status
100
mamaFtMember_activate
(
101
mamaFtMember
member
);
102
106
MAMAExpDLL
107
extern
mama_status
108
mamaFtMember_deactivate
(
109
mamaFtMember
member
);
110
116
MAMAExpDLL
117
extern
mama_status
118
mamaFtMember_isActive
(
119
const
mamaFtMember
member
,
120
int
* result);
121
125
MAMAExpDLL
126
extern
mama_status
127
mamaFtMember_getGroupName
(
128
const
mamaFtMember
member
,
129
const
char
** result);
130
134
MAMAExpDLL
135
extern
mama_status
136
mamaFtMember_getWeight
(
137
const
mamaFtMember
member
,
138
mama_u32_t
* result);
139
143
MAMAExpDLL
144
extern
mama_status
145
mamaFtMember_getHeartbeatInterval
(
146
const
mamaFtMember
member
,
147
mama_f64_t
* result);
148
152
MAMAExpDLL
153
extern
mama_status
154
mamaFtMember_getTimeoutInterval
(
155
const
mamaFtMember
member
,
156
mama_f64_t
* result);
157
161
MAMAExpDLL
162
extern
mama_status
163
mamaFtMember_getHeartbeatTick
(
164
const
mamaFtMember
member
,
165
mama_u32_t
* result);
166
171
MAMAExpDLL
172
extern
mama_status
173
mamaFtMember_getClosure
(
174
const
mamaFtMember
member
,
175
void
** result);
176
182
MAMAExpDLL
183
extern
mama_status
184
mamaFtMember_setWeight
(
185
mamaFtMember
member
,
186
mama_u32_t
value);
187
200
MAMAExpDLL
201
extern
mama_status
202
mamaFtMember_setInstanceId
(
203
mamaFtMember
member
,
204
const
char
*
id
);
205
211
MAMAExpDLL
212
extern
const
char
*
213
mamaFtStateToString
(
mamaFtState
state);
214
215
216
#if defined(__cplusplus)
217
}
218
#endif
219
220
#endif
/* MamaFtH __ */
© 2012 Linux Foundation