22 #ifndef MamaSymbolListH__
23 #define MamaSymbolListH__
32 #if defined(__cplusplus)
48 typedef mama_status (MAMACALLTYPE *addSymbolCbType) (
56 typedef void (MAMACALLTYPE *mamaSymbolListIterateCompleteFunc) (
64 typedef void (MAMACALLTYPE *mamaSymbolListIterateMemberFunc) (
77 typedef mama_status (MAMACALLTYPE *removeSymbolCbType) (
244 unsigned long *
size);
263 mamaSymbolListIterateMemberFunc memberFunc,
264 mamaSymbolListIterateCompleteFunc completeFunc,
265 void* iterateClosure);
324 addSymbolCbType addCb);
359 removeSymbolCbType removeCb);
361 #if defined(__cplusplus)
MAMAExpDLL mama_status mamaSymbolList_deallocateWithMembers(mamaSymbolList symbolList)
Free the memory for the symbolList and all members.
MAMAExpDLL mama_status mamaSymbolList_iterate(mamaSymbolList symbolList, mamaSymbolListIterateMemberFunc memberFunc, mamaSymbolListIterateCompleteFunc completeFunc, void *iterateClosure)
Iterate over the symbol list.
MAMAExpDLL mama_status mamaSymbolList_deallocateMember(mamaSymbolList symbolList, mamaSymbolListMember member)
Deallocate a symbolListMember.
typedef void(MAMACALLTYPE *mamaSymbolListIterateCompleteFunc)(mamaSymbolList symbolList
Function invoked when completing the iteration over the symbol list using mamaSymbolList_iterate().
MAMAExpDLL mama_status mamaSymbolList_getSize(const mamaSymbolList symbolList, unsigned long *size)
Get the size of the symbolList.
const char mamaFtState void * closure
Definition: ft.h:54
MAMAExpDLL mama_status mamaSymbolList_setAddSymbolHandler(mamaSymbolList symbolList, addSymbolCbType addCb)
Registers the user defined add symbol callback with the symbolList.
mamaSource source
Definition: sourceman.h:38
struct mamaSymbolList_ * mamaSymbolList
Definition: symbollisttypes.h:32
void * closure
Definition: symbollist.h:50
MAMAExpDLL mama_status mamaSymbolList_getClosure(const mamaSymbolList symbolList, void **closure)
Get the closure associated with the this symbolList.
MAMAExpDLL mamaSymbolListMember mamaSymbolList_allocateMember(mamaSymbolList symbolList)
Allocate a symbolListMember.
MAMAExpDLL mama_status mamaSymbolList_removeMemberByRef(mamaSymbolList symbolList, mamaSymbolListMember member)
Remove a symbol member from the symbol list.
MAMAExpDLL mama_status mamaSymbolList_addMember(mamaSymbolList symbolList, mamaSymbolListMember member)
Add a symbol member to the symbol list, this will cause the add callback to be invoked if it has been...
MAMAExpDLL mama_status mamaSymbolList_setRemoveSymbolHandler(mamaSymbolList symbolList, removeSymbolCbType removeCb)
Registers the user defined remove symbol callback with the symbolList.
MAMAExpDLL mama_status mamaSymbolList_deallocate(mamaSymbolList symbolList)
Free a symbol list created by mamaSymbolList_allocate.
mamaSymbolListMember member
Definition: symbollist.h:66
MAMAExpDLL mama_status mamaSymbolList_allocate(mamaSymbolList *symbolList)
Allocate and initialize memory for a new symbolList, mamaSymbolList_deallocate should be called on th...
MAMAExpDLL mama_status mamaSymbolList_removeMember(mamaSymbolList symbolList, const char *symbol, const char *source, mamaTransport transport, mamaSymbolListMember *member)
Remove a symbol member from the symbol list.
size_t size
Definition: queue.h:46
MAMAExpDLL mama_status mamaSymbolList_setClosure(mamaSymbolList symbolList, void *closure)
Set the closure associated with the this symbolList.
mama_status
Definition: status.h:37
MAMAExpDLL mama_status mamaSymbolList_findMember(const mamaSymbolList symbolList, const char *symbol, const char *source, mamaTransport transport, mamaSymbolListMember *member)
Find a symbol member in the symbol list.
struct mamaSymbolListMember_ * mamaSymbolListMember
Definition: symbollisttypes.h:33
struct mamaTransportImpl_ * mamaTransport
Definition: types.h:98
typedef mama_status(MAMACALLTYPE *addSymbolCbType)(mamaSymbolListMember symbol
Prototype for add symbol callback.
MAMAExpDLL mama_status mamaSymbolList_clear(mamaSymbolList symbolList, int membersToo)
Clear the symbol list.