Sirikata
|
Function signature for an ODP message handler. More...
#include <Defs.hpp>
Classes | |
class | Hasher |
Public Types | |
typedef IdentifierType | Identifier |
Public Member Functions | |
Endpoint (const SpaceID &space, const Identifier &id, const PortID &port) | |
bool | operator== (const Endpoint &rhs) const |
bool | operator!= (const Endpoint &rhs) const |
bool | operator> (const Endpoint &rhs) const |
bool | operator>= (const Endpoint &rhs) const |
bool | operator< (const Endpoint &rhs) const |
bool | operator<= (const Endpoint &rhs) const |
bool | matches (const Endpoint &rhs) const |
Returns true if the endpoint matches this one, i.e. | |
const SpaceID & | space () const |
const Identifier & | id () const |
const PortID & | port () const |
String | toString () const |
Private Member Functions | |
Endpoint () | |
Private Attributes | |
SpaceID | mSpace |
Identifier | mID |
PortID | mPort |
Function signature for an ODP message handler.
Takes a message header, containing the ODP routing information, and a MemoryReference containing the payload. A fully qualified endpoint, including the unique identifier and port. Note that this does not have to be bound to unique values. For instance, to specify coverage of all ports, PortID::any() could be used. However, depending on context, the use of non-specific values may be invalid.
Endpoints always include a space, unique identifier, and port. This class is templated on the identifier part, which must be comparable, have a Hasher nested class, and have static any() and null() methods.
typedef IdentifierType Sirikata::XDP::Endpoint< IdentifierType >::Identifier |
Sirikata::XDP::Endpoint< IdentifierType >::Endpoint | ( | const SpaceID & | space, |
const Identifier & | id, | ||
const PortID & | port | ||
) | [inline] |
Reimplemented in Sirikata::ODP::Endpoint.
Sirikata::XDP::Endpoint< IdentifierType >::Endpoint | ( | ) | [private] |
Reimplemented in Sirikata::ODP::Endpoint, and Sirikata::OHDP::Endpoint.
const Identifier& Sirikata::XDP::Endpoint< IdentifierType >::id | ( | ) | const [inline] |
bool Sirikata::XDP::Endpoint< IdentifierType >::matches | ( | const Endpoint< IdentifierType > & | rhs | ) | const [inline] |
Returns true if the endpoint matches this one, i.e.
if all components match, either precisely or because one of them is any().
bool Sirikata::XDP::Endpoint< IdentifierType >::operator!= | ( | const Endpoint< IdentifierType > & | rhs | ) | const [inline] |
bool Sirikata::XDP::Endpoint< IdentifierType >::operator< | ( | const Endpoint< IdentifierType > & | rhs | ) | const [inline] |
bool Sirikata::XDP::Endpoint< IdentifierType >::operator<= | ( | const Endpoint< IdentifierType > & | rhs | ) | const [inline] |
bool Sirikata::XDP::Endpoint< IdentifierType >::operator== | ( | const Endpoint< IdentifierType > & | rhs | ) | const [inline] |
bool Sirikata::XDP::Endpoint< IdentifierType >::operator> | ( | const Endpoint< IdentifierType > & | rhs | ) | const [inline] |
bool Sirikata::XDP::Endpoint< IdentifierType >::operator>= | ( | const Endpoint< IdentifierType > & | rhs | ) | const [inline] |
const PortID& Sirikata::XDP::Endpoint< IdentifierType >::port | ( | ) | const [inline] |
Referenced by Sirikata::OHDP::DelegateService::deallocatePort(), Sirikata::ODP::DelegateService::deallocatePort(), Sirikata::Server::delegateODPPortSend(), Sirikata::HostedObject::delegateODPPortSend(), Sirikata::Server::delegateOHDPPortSend(), Sirikata::SessionManager::delegateOHDPPortSend(), Sirikata::OHDP::DelegateService::deliver(), Sirikata::ODP::DelegateService::deliver(), Sirikata::SST::BaseDatagramLayer< OHDP::SpaceNodeID >::receiveMessage(), and Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::receiveMessage().
const SpaceID& Sirikata::XDP::Endpoint< IdentifierType >::space | ( | ) | const [inline] |
Referenced by Sirikata::OHDP::DelegateService::deallocatePort(), Sirikata::HostedObject::delegateODPPortSend(), Sirikata::SessionManager::delegateOHDPPortSend(), Sirikata::OHDP::DelegateService::deliver(), Sirikata::JS::EmersonScript::iHandleScriptCommUnreliable(), Sirikata::SST::BaseDatagramLayer< OHDP::SpaceNodeID >::receiveMessage(), and Sirikata::SST::BaseDatagramLayer< SpaceObjectReference >::receiveMessage().
String Sirikata::XDP::Endpoint< IdentifierType >::toString | ( | ) | const [inline] |
Identifier Sirikata::XDP::Endpoint< IdentifierType >::mID [private] |
Referenced by Sirikata::XDP::Endpoint< NodeID >::id(), Sirikata::XDP::Endpoint< NodeID >::matches(), Sirikata::XDP::Endpoint< IdentifierType >::Hasher::operator()(), Sirikata::XDP::Endpoint< NodeID >::operator<(), Sirikata::XDP::Endpoint< NodeID >::operator==(), and Sirikata::XDP::Endpoint< NodeID >::operator>().
PortID Sirikata::XDP::Endpoint< IdentifierType >::mPort [private] |
Referenced by Sirikata::XDP::Endpoint< NodeID >::matches(), Sirikata::XDP::Endpoint< IdentifierType >::Hasher::operator()(), Sirikata::XDP::Endpoint< NodeID >::operator<(), Sirikata::XDP::Endpoint< NodeID >::operator==(), Sirikata::XDP::Endpoint< NodeID >::operator>(), and Sirikata::XDP::Endpoint< NodeID >::port().
SpaceID Sirikata::XDP::Endpoint< IdentifierType >::mSpace [private] |
Referenced by Sirikata::XDP::Endpoint< NodeID >::matches(), Sirikata::XDP::Endpoint< IdentifierType >::Hasher::operator()(), Sirikata::XDP::Endpoint< NodeID >::operator<(), Sirikata::XDP::Endpoint< NodeID >::operator==(), Sirikata::XDP::Endpoint< NodeID >::operator>(), and Sirikata::XDP::Endpoint< NodeID >::space().