Sirikata
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Types | Private Member Functions | Private Attributes
Sirikata::PintoManagerBase Class Reference

PintoManagerBase is the base class for classes the answer queries looking for other servers that are relevant to object queries. More...

#include <PintoManagerBase.hpp>

Inheritance diagram for Sirikata::PintoManagerBase:
Collaboration diagram for Sirikata::PintoManagerBase:

List of all members.

Public Types

typedef Prox::Aggregator
< ServerProxSimulationTraits
ProxAggregator

Public Member Functions

 PintoManagerBase (PintoContext *ctx)
virtual ~PintoManagerBase ()
virtual void start ()
virtual void stop ()

Protected Member Functions

virtual void onConnected (Sirikata::Network::Stream *newStream)
virtual void onInitialMessage (Sirikata::Network::Stream *stream)
virtual void onRegionUpdate (Sirikata::Network::Stream *stream, BoundingSphere3f bounds)
virtual void onMaxSizeUpdate (Sirikata::Network::Stream *stream, float32 ms)
virtual void onQueryUpdate (Sirikata::Network::Stream *stream, const String &update)
virtual void onDisconnected (Sirikata::Network::Stream *stream)
virtual void aggregateCreated (ProxAggregator *handler, const ServerID &objid)
virtual void aggregateChildAdded (ProxAggregator *handler, const ServerID &objid, const ServerID &child, const Vector3f &bnds_center, const float32 bnds_center_radius, const float32 max_obj_size)
virtual void aggregateChildRemoved (ProxAggregator *handler, const ServerID &objid, const ServerID &child, const Vector3f &bnds_center, const float32 bnds_center_radius, const float32 max_obj_size)
virtual void aggregateBoundsUpdated (ProxAggregator *handler, const ServerID &objid, const Vector3f &bnds_center, const float32 bnds_center_radius, const float32 max_obj_size)
virtual void aggregateDestroyed (ProxAggregator *handler, const ServerID &objid)
virtual void aggregateObserved (ProxAggregator *handler, const ServerID &objid, uint32 nobservers, uint32 nchildren)
ServerID streamServerID (Sirikata::Network::Stream *) const

Protected Attributes

PintoContextmContext
Network::IOStrandmStrand
Network::StreamListenermListener
PintoManagerLocationServiceCachemLocCache

Private Types

typedef
std::tr1::unordered_map
< Sirikata::Network::Stream
*, ServerID > 
StreamServerIDMap

Private Member Functions

void newStreamCallback (Sirikata::Network::Stream *newStream, Sirikata::Network::Stream::SetCallbacks &setCallbacks)
void handleClientConnection (Sirikata::Network::Stream *stream, Network::Stream::ConnectionStatus status, const std::string &reason)
void handleClientReceived (Sirikata::Network::Stream *stream, Network::Chunk &data, const Network::Stream::PauseReceiveCallback &pause)
void handleClientReadySend (Sirikata::Network::Stream *stream)

Private Attributes

StreamServerIDMap mStreamServers

Detailed Description

PintoManagerBase is the base class for classes the answer queries looking for other servers that are relevant to object queries.

It implements basic connectivity, leaving the implementation of queries and the particular format of requests and responses to implementations.


Member Typedef Documentation

typedef std::tr1::unordered_map<Sirikata::Network::Stream*, ServerID> Sirikata::PintoManagerBase::StreamServerIDMap [private]

Constructor & Destructor Documentation

Sirikata::PintoManagerBase::PintoManagerBase ( PintoContext ctx)
Sirikata::PintoManagerBase::~PintoManagerBase ( ) [virtual]

References mListener, and mStrand.


Member Function Documentation

void Sirikata::PintoManagerBase::aggregateBoundsUpdated ( ProxAggregator handler,
const ServerID &  objid,
const Vector3f &  bnds_center,
const float32  bnds_center_radius,
const float32  max_obj_size 
) [protected, virtual]
void Sirikata::PintoManagerBase::aggregateChildAdded ( ProxAggregator handler,
const ServerID &  objid,
const ServerID &  child,
const Vector3f &  bnds_center,
const float32  bnds_center_radius,
const float32  max_obj_size 
) [protected, virtual]
void Sirikata::PintoManagerBase::aggregateChildRemoved ( ProxAggregator handler,
const ServerID &  objid,
const ServerID &  child,
const Vector3f &  bnds_center,
const float32  bnds_center_radius,
const float32  max_obj_size 
) [protected, virtual]
void Sirikata::PintoManagerBase::aggregateCreated ( ProxAggregator handler,
const ServerID &  objid 
) [protected, virtual]
void Sirikata::PintoManagerBase::aggregateDestroyed ( ProxAggregator handler,
const ServerID &  objid 
) [protected, virtual]
void Sirikata::PintoManagerBase::aggregateObserved ( ProxAggregator handler,
const ServerID &  objid,
uint32  nobservers,
uint32  nchildren 
) [protected, virtual]
void Sirikata::PintoManagerBase::handleClientConnection ( Sirikata::Network::Stream stream,
Network::Stream::ConnectionStatus  status,
const std::string &  reason 
) [private]
void Sirikata::PintoManagerBase::handleClientReadySend ( Sirikata::Network::Stream stream) [private]

Referenced by newStreamCallback().

void Sirikata::PintoManagerBase::handleClientReceived ( Sirikata::Network::Stream stream,
Network::Chunk &  data,
const Network::Stream::PauseReceiveCallback pause 
) [private]
void Sirikata::PintoManagerBase::newStreamCallback ( Sirikata::Network::Stream newStream,
Sirikata::Network::Stream::SetCallbacks setCallbacks 
) [private]
void Sirikata::PintoManagerBase::onConnected ( Sirikata::Network::Stream newStream) [protected, virtual]
void Sirikata::PintoManagerBase::onDisconnected ( Sirikata::Network::Stream stream) [protected, virtual]
void Sirikata::PintoManagerBase::onInitialMessage ( Sirikata::Network::Stream stream) [protected, virtual]
void Sirikata::PintoManagerBase::onMaxSizeUpdate ( Sirikata::Network::Stream stream,
float32  ms 
) [protected, virtual]
void Sirikata::PintoManagerBase::onQueryUpdate ( Sirikata::Network::Stream stream,
const String &  update 
) [protected, virtual]
void Sirikata::PintoManagerBase::onRegionUpdate ( Sirikata::Network::Stream stream,
BoundingSphere3f  bounds 
) [protected, virtual]
void Sirikata::PintoManagerBase::start ( ) [virtual]
void Sirikata::PintoManagerBase::stop ( ) [virtual]
ServerID Sirikata::PintoManagerBase::streamServerID ( Sirikata::Network::Stream stream) const [protected]

Member Data Documentation


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