Pixel Dust Game Engine  v0.9.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups
Public Types | Public Member Functions | Friends | List of all members
NetworkManager Class Referenceabstract
Inheritance diagram for NetworkManager:
Inheritance graph
[legend]
Collaboration diagram for NetworkManager:
Collaboration graph
[legend]

Public Types

enum  {
  error_BadPacket = -1,
  error_OversizePacket = -2,
  error_OutOfMemory = -3
}
 
enum  {
  flag_PublicPort = 1 << 0,
  flag_UDPOnly = 1 << 1,
  flag_TCPOnly = 1 << 2,
  flag_NoFraming = 1 << 3,
  flag_NoHandshake = 1 << 4,
  flag_RawUDP = flag_NoFraming + flag_NoHandshake + flag_UDPOnly,
  flag_RawTCP = flag_NoFraming + flag_NoHandshake + flag_TCPOnly
}
 

Public Member Functions

virtual void openConnection (const char *destination, void *userContext=0, unsigned char connectFlags=0)=0
 
virtual void closeConnection (long id, int error=0)=0
 
virtual void sendData (long id, void *data, long dataLen)=0
 
virtual void broadcastData (void *data, long datalen)=0
 
virtual void releaseNetData (NetData *data)=0
 
virtual void setConnectionContext (long id, void *userContext)=0
 
virtual void setMaxIncomingPacketSize (long id, long maxLen)=0
 
virtual void createServerPort (short portNum, void *userContext=0, unsigned char connectFlags=flag_PublicPort)=0
 
virtual void closeServerPort (short portNum)=0
 
virtual void idle ()=0
 
virtual void setPublicInfo (long connectionCreator, const char *publicName)=0
 
virtual void addIncomingPacketGatekeeper (GatekeeperFunc func, void *context)=0
 
virtual void removeIncomingPacketGatekeeper (GatekeeperFunc func)=0
 
virtual void waitingForNetwork ()=0
 
virtual void doneWaitingForNetwork ()=0
 
virtual bool isWaitingForNetwork ()=0
 
- Public Member Functions inherited from EventEmitter
virtual void addHandler (IEventHandler *inHandler, long inType=all_events)
 add a new handler for some event type, or for all events if no type specified
 
virtual void removeHandler (IEventHandler *inHandler, long inType=all_events)
 Remove a handler for some event type, or for all events if no type specified.
 
virtual void clear (bool doRelease=true)
 remove all handlers
 
virtual void blockEvent (long inEventType)
 temporarily ignore all events of a particular type, just drop them on the floor
 
virtual void unblockEvent (long inEventType)
 stop ignoring events of a particular type, no recovery of previously ignored events
 
 EventEmitter ()
 constructor for new event emitter
 
virtual bool postEvent (long inEventType, void *inEventData, EventEmitter *fromEmitter=0)
 post an event for immediate handling locally, or relay it to the EventManger
 
- Public Member Functions inherited from Singleton< NetworkManager >
 Singleton ()
 
virtual ~Singleton ()
 

Friends

class Singleton< NetworkManager >
 

Additional Inherited Members

- Static Public Member Functions inherited from Singleton< NetworkManager >
static NetworkManagergetSingletonInstance ()
 
static bool hasInstance ()
 
static NetworkManagerinstance ()
 
static void setInstance (NetworkManager *i)
 
static NetworkManagercreateSingletonInstance ()
 

Detailed Description

NetworkManager used for sending network messages and starting up connections

Member Enumeration Documentation

anonymous enum
Enumerator:
error_BadPacket 
error_OversizePacket 
error_OutOfMemory 
anonymous enum
Enumerator:
flag_PublicPort 
flag_UDPOnly 
flag_TCPOnly 
flag_NoFraming 
flag_NoHandshake 
flag_RawUDP 
flag_RawTCP 

Member Function Documentation

virtual void addIncomingPacketGatekeeper ( GatekeeperFunc  func,
void *  context 
)
pure virtual
virtual void broadcastData ( void *  data,
long  datalen 
)
pure virtual
virtual void closeConnection ( long  id,
int  error = 0 
)
pure virtual
virtual void closeServerPort ( short  portNum)
pure virtual
virtual void createServerPort ( short  portNum,
void *  userContext = 0,
unsigned char  connectFlags = flag_PublicPort 
)
pure virtual
virtual void doneWaitingForNetwork ( )
pure virtual
virtual void idle ( )
pure virtual
virtual bool isWaitingForNetwork ( )
pure virtual
virtual void openConnection ( const char *  destination,
void *  userContext = 0,
unsigned char  connectFlags = 0 
)
pure virtual
virtual void releaseNetData ( NetData data)
pure virtual
virtual void removeIncomingPacketGatekeeper ( GatekeeperFunc  func)
pure virtual
virtual void sendData ( long  id,
void *  data,
long  dataLen 
)
pure virtual
virtual void setConnectionContext ( long  id,
void *  userContext 
)
pure virtual
virtual void setMaxIncomingPacketSize ( long  id,
long  maxLen 
)
pure virtual
virtual void setPublicInfo ( long  connectionCreator,
const char *  publicName 
)
pure virtual
virtual void waitingForNetwork ( )
pure virtual

Friends And Related Function Documentation

friend class Singleton< NetworkManager >
friend