Sirikata
Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
Sirikata::SST::BaseDatagramLayer< SpaceObjectReference > Class Template Reference

#include <SST.hpp>

Collaboration diagram for Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >:

List of all members.

Public Types

typedef std::tr1::shared_ptr
< BaseDatagramLayer
< EndPointType > > 
Ptr
typedef Ptr BaseDatagramLayerPtr
typedef std::tr1::function
< void(void *, int) 
DataCallback )

Public Member Functions

void listenOn (EndPoint< EndPointType > &listeningEndPoint, DataCallback cb)
void listenOn (const EndPoint< EndPointType > &listeningEndPoint)
void unlisten (EndPoint< EndPointType > &ep)
void send (EndPoint< EndPointType > *src, EndPoint< EndPointType > *dest, void *data, int len)
const Contextcontext ()
uint32 getUnusedPort (const EndPointType &ep)
void invalidate ()

Static Public Member Functions

static BaseDatagramLayerPtr getDatagramLayer (ConnectionVariables< EndPointType > *sstConnVars, EndPointType endPoint)
static BaseDatagramLayerPtr createDatagramLayer (ConnectionVariables< EndPointType > *sstConnVars, EndPointType endPoint, const Context *ctx, ODP::Service *odp)
static void stopListening (ConnectionVariables< EndPointType > *sstConnVars, EndPoint< EndPointType > &listeningEndPoint)

Private Types

typedef SpaceObjectReference EndPointType
typedef std::map< EndPoint
< EndPointType >, ODP::Port * > 
PortMap

Private Member Functions

 BaseDatagramLayer (ConnectionVariables< EndPointType > *sstConnVars, const Context *ctx, ODP::Service *odpservice, const EndPointType &ep)
ODP::PortallocatePort (const EndPoint< EndPointType > &ep)
ODP::PortgetPort (const EndPoint< EndPointType > &ep)
ODP::PortgetOrAllocatePort (const EndPoint< EndPointType > &ep)
void receiveMessage (const ODP::Endpoint &src, const ODP::Endpoint &dst, MemoryReference payload)
void receiveMessageToCallback (const ODP::Endpoint &src, const ODP::Endpoint &dst, MemoryReference payload, DataCallback cb)

Private Attributes

const ContextmContext
ODP::ServicemODP
PortMap mAllocatedPorts
boost::mutex mMutex
ConnectionVariables
< EndPointType > * 
mSSTConnVars
EndPointType mEndpoint

template<>
class Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >


Member Typedef Documentation

typedef std::tr1::function<void(void*, int) Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::DataCallback)

Constructor & Destructor Documentation

Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::BaseDatagramLayer ( ConnectionVariables< EndPointType > *  sstConnVars,
const Context ctx,
ODP::Service odpservice,
const EndPointType ep 
) [inline, private]

Member Function Documentation

ODP::Port* Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::allocatePort ( const EndPoint< EndPointType > &  ep) [inline, private]
static BaseDatagramLayerPtr Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::createDatagramLayer ( ConnectionVariables< EndPointType > *  sstConnVars,
EndPointType  endPoint,
const Context ctx,
ODP::Service odp 
) [inline, static]
static BaseDatagramLayerPtr Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::getDatagramLayer ( ConnectionVariables< EndPointType > *  sstConnVars,
EndPointType  endPoint 
) [inline, static]
ODP::Port* Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::getOrAllocatePort ( const EndPoint< EndPointType > &  ep) [inline, private]
ODP::Port* Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::getPort ( const EndPoint< EndPointType > &  ep) [inline, private]
uint32 Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::getUnusedPort ( const EndPointType ep) [inline]
void Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::invalidate ( ) [inline]
void Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::listenOn ( EndPoint< EndPointType > &  listeningEndPoint,
DataCallback  cb 
) [inline]
void Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::listenOn ( const EndPoint< EndPointType > &  listeningEndPoint) [inline]
void Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::receiveMessage ( const ODP::Endpoint src,
const ODP::Endpoint dst,
MemoryReference  payload 
) [inline, private]
void Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::receiveMessageToCallback ( const ODP::Endpoint src,
const ODP::Endpoint dst,
MemoryReference  payload,
DataCallback  cb 
) [inline, private]
void Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::send ( EndPoint< EndPointType > *  src,
EndPoint< EndPointType > *  dest,
void *  data,
int  len 
) [inline]
static void Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::stopListening ( ConnectionVariables< EndPointType > *  sstConnVars,
EndPoint< EndPointType > &  listeningEndPoint 
) [inline, static]

Member Data Documentation


The documentation for this class was generated from the following file: