• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

NetworkIDObject.h

Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 #if !defined(__NETWORK_ID_GENERATOR)
00010 #define      __NETWORK_ID_GENERATOR
00011 
00012 #include "RakNetTypes.h"
00013 #include "RakMemoryOverride.h"
00014 #include "Export.h"
00015 
00016 class NetworkIDManager;
00017 
00024 class RAK_DLL_EXPORT NetworkIDObject
00025 {
00026 public:
00027         // Constructor.  NetworkIDs, if IsNetworkIDAuthority() is true, are created here.
00028         NetworkIDObject();
00029 
00030         // Destructor.  Used NetworkIDs, if any, are freed here.
00031         virtual ~NetworkIDObject();
00032 
00036         virtual void SetNetworkIDManager( NetworkIDManager *manager);
00037 
00039         virtual NetworkIDManager * GetNetworkIDManager( void );
00040         
00045         virtual NetworkID GetNetworkID( void );
00046         
00049         virtual void SetNetworkID( NetworkID id );
00050         
00054         virtual void SetParent( void *_parent );
00055         
00058         virtual void* GetParent( void ) const;
00059         
00063         virtual bool RequiresSetParent(void) const;
00064 
00066         uint32_t GetAllocationNumber(void) const;
00067 
00068 protected:
00070         NetworkID networkID;
00071 
00073         void *parent;
00074 
00076         static uint32_t nextAllocationNumber;
00077         uint32_t allocationNumber;
00078         
00080         void GenerateID(void);
00081         
00083         bool callGenerationCode; 
00084         
00085         NetworkIDManager *networkIDManager;
00086 };
00087 
00088 #endif

Generated on Thu Sep 30 2010 01:27:25 for RakNet by  doxygen 1.7.1