Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef __RPC_MAP
00012 #define __RPC_MAP
00013
00014 #include "RakMemoryOverride.h"
00015 #include "RPCNode.h"
00016 #include "DS_List.h"
00017 #include "RakNetTypes.h"
00018 #include "Export.h"
00019
00023 struct RAK_DLL_EXPORT RPCMap
00024 {
00025 public:
00026 RPCMap();
00027 ~RPCMap();
00028 void Clear(void);
00029 RPCNode *GetNodeFromIndex(RPCIndex index);
00030 RPCNode *GetNodeFromFunctionName(const char *uniqueIdentifier);
00031 RPCIndex GetIndexFromFunctionName(const char *uniqueIdentifier);
00032 void AddIdentifierWithFunction(const char *uniqueIdentifier, void *functionPointer, bool isPointerToMember);
00033 void AddIdentifierAtIndex(const char *uniqueIdentifier, RPCIndex insertionIndex);
00034 void RemoveNode(const char *uniqueIdentifier);
00035 protected:
00036 DataStructures::List<RPCNode *> rpcSet;
00037 };
00038
00039 #endif
00040