Sirikata
|
typedef std::tr1::function<void()> Sirikata::SessionManager::ObjectConnections::DeferredCallback [private] |
typedef std::vector<DeferredCallback> Sirikata::SessionManager::ObjectConnections::DeferredCallbackList [private] |
typedef std::tr1::unordered_map<SpaceObjectReference, ObjectInfo, SpaceObjectReference::Hasher> Sirikata::SessionManager::ObjectConnections::ObjectInfoMap [private] |
typedef std::tr1::unordered_map<ServerID, std::vector<SpaceObjectReference> > Sirikata::SessionManager::ObjectConnections::ObjectServerMap [private] |
Sirikata::SessionManager::ObjectConnections::ObjectConnections | ( | SessionManager * | _parent | ) |
void Sirikata::SessionManager::ObjectConnections::add | ( | const SpaceObjectReference & | sporef_objid, |
ConnectingInfo | ci, | ||
InternalConnectedCallback | connect_cb, | ||
MigratedCallback | migrate_cb, | ||
StreamCreatedCallback | stream_created_cb, | ||
DisconnectedCallback | disconnected_cb | ||
) |
References Sirikata::SessionManager::ObjectConnections::ObjectInfo::connectedCB, Sirikata::SessionManager::ObjectConnections::ObjectInfo::connectingInfo, Sirikata::SessionManager::ObjectConnections::ObjectInfo::disconnectedCB, Sirikata::Logging::error, Sirikata::SessionManager::ObjectConnections::ObjectInfo::migratedCB, SESSION_LOG, and Sirikata::SessionManager::ObjectConnections::ObjectInfo::streamCreatedCB.
Referenced by Sirikata::SessionManager::connect().
void Sirikata::SessionManager::ObjectConnections::clearSeqno | ( | const SpaceObjectReference & | sporef_objid | ) |
SessionManager::ConnectingInfo & Sirikata::SessionManager::ObjectConnections::connectingTo | ( | const SpaceObjectReference & | obj, |
ServerID | connecting_to | ||
) |
Referenced by Sirikata::SessionManager::openConnectionStartSession().
void Sirikata::SessionManager::ObjectConnections::disconnectWithCode | ( | const SpaceObjectReference & | sporef, |
const SpaceObjectReference & | connectedAs, | ||
Disconnect::Code | code | ||
) |
DO NOT reorder this copy. connectedAs may come from a MFD item (eg remove(sporef will invalidate connectedAs) )
References Sirikata::Logging::error, Sirikata::SpaceObjectReference::null(), SILOG, and Sirikata::SpaceObjectReference::toString().
bool Sirikata::SessionManager::ObjectConnections::exists | ( | const SpaceObjectReference & | sporef_objid | ) |
Referenced by Sirikata::SessionManager::checkConnectedAndRetry(), Sirikata::SessionManager::connect(), Sirikata::SessionManager::handleSessionMessageConnectResponseError(), Sirikata::SessionManager::handleSessionMessageConnectResponseRedirect(), Sirikata::SessionManager::handleSessionMessageConnectResponseSuccess(), and Sirikata::SessionManager::handleSessionMessageInitMigration().
SessionManager::InternalConnectedCallback & Sirikata::SessionManager::ObjectConnections::getConnectCallback | ( | const SpaceObjectReference & | sporef_objid | ) |
Referenced by Sirikata::SessionManager::openConnectionStartSession().
ServerID Sirikata::SessionManager::ObjectConnections::getConnectedServer | ( | const SpaceObjectReference & | sporef_obj_id, |
bool | allow_connecting = false |
||
) |
ServerID Sirikata::SessionManager::ObjectConnections::getConnectingToServer | ( | const SpaceObjectReference & | sporef_obj_id | ) |
ServerID Sirikata::SessionManager::ObjectConnections::getMigratingToServer | ( | const SpaceObjectReference & | sporef_obj_id | ) |
uint64 Sirikata::SessionManager::ObjectConnections::getSeqno | ( | const SpaceObjectReference & | sporef_objid | ) |
Referenced by Sirikata::SessionManager::disconnect(), Sirikata::SessionManager::handleSessionMessageConnectResponseError(), Sirikata::SessionManager::handleSessionMessageConnectResponseRedirect(), Sirikata::SessionManager::handleSessionMessageConnectResponseSuccess(), Sirikata::SessionManager::handleSessionMessageInitMigration(), Sirikata::SessionManager::openConnectionStartSession(), and Sirikata::SessionManager::sendConnectSuccessAck().
void Sirikata::SessionManager::ObjectConnections::gracefulDisconnect | ( | const SpaceObjectReference & | sporef | ) |
References Sirikata::Disconnect::Requested.
Referenced by Sirikata::SessionManager::disconnect().
void Sirikata::SessionManager::ObjectConnections::handleConnectError | ( | const SpaceObjectReference & | sporef_objid | ) |
References Sirikata::Disconnect::LoginDenied.
Referenced by Sirikata::SessionManager::handleSessionMessageConnectResponseError().
void Sirikata::SessionManager::ObjectConnections::handleConnectStream | ( | const SpaceObjectReference & | sporef_objid, |
ConnectionEvent | after, | ||
bool | do_cb | ||
) |
Referenced by Sirikata::SessionManager::spaceConnectCallback().
ServerID Sirikata::SessionManager::ObjectConnections::handleConnectSuccess | ( | const SpaceObjectReference & | sporef_obj, |
const TimedMotionVector3f & | loc, | ||
const TimedMotionQuaternion & | orient, | ||
const BoundingSphere3f & | bnds, | ||
const String & | mesh, | ||
const String & | phy, | ||
bool | do_cb | ||
) |
References Sirikata::SessionManager::ConnectingInfo::bounds, Sirikata::Logging::detailed, Sirikata::Logging::error, Sirikata::SessionManager::ConnectingInfo::loc, Sirikata::SessionManager::ConnectingInfo::mesh, Sirikata::SpaceObjectReference::object(), Sirikata::SessionManager::ConnectingInfo::orient, Sirikata::SessionManager::ConnectingInfo::physics, and SESSION_LOG.
Referenced by Sirikata::SessionManager::handleSessionMessageConnectResponseSuccess().
void Sirikata::SessionManager::ObjectConnections::handleUnderlyingDisconnect | ( | ServerID | sid, |
const String & | reason | ||
) |
References Sirikata::Disconnect::Forced.
Referenced by Sirikata::SessionManager::handleSpaceConnection().
void Sirikata::SessionManager::ObjectConnections::invokeDeferredCallbacks | ( | ) |
Referenced by Sirikata::SessionManager::timeSyncUpdated().
void Sirikata::SessionManager::ObjectConnections::remove | ( | const SpaceObjectReference & | obj | ) |
void Sirikata::SessionManager::ObjectConnections::startMigration | ( | const SpaceObjectReference & | objid, |
ServerID | migrating_to | ||
) |
References Sirikata::SpaceObjectReference::object().
Referenced by Sirikata::SessionManager::migrate().
uint64 Sirikata::SessionManager::ObjectConnections::updateSeqno | ( | const SpaceObjectReference & | sporef_objid | ) |
bool Sirikata::SessionManager::ObjectConnections::validSeqno | ( | const SpaceObjectReference & | sporef_objid | ) |
uint64 Sirikata::SessionManager::ObjectConnections::mSeqnoSource [private] |