Sirikata
Public Types | Public Member Functions | Private Member Functions | Private Attributes
Sirikata::AsyncConnection Class Reference

#include <asyncConnection.hpp>

Collaboration diagram for Sirikata::AsyncConnection:

List of all members.

Public Types

enum  ConnectionState { READY, NEED_NEW_SOCKET, PROCESSING }

Public Member Functions

void initialize (boost::asio::ip::tcp::socket *socket, boost::asio::ip::tcp::resolver::iterator, SpaceContext *spc, Network::IOStrand *)
void tick (std::vector< CraqOperationResult * > &opResults_get, std::vector< CraqOperationResult * > &opResults_error, std::vector< CraqOperationResult * > &opResults_trackedSets)
AsyncConnection::ConnectionState ready ()
bool set (CraqDataKey &dataToSet, const CraqEntry &dataToSetTo, bool &track, int &trackNum)
bool get (CraqDataKey &dataToGet)
 ~AsyncConnection ()
 AsyncConnection ()

Private Member Functions

void connect_handler (const boost::system::error_code &error)
void read_handler_set (const boost::system::error_code &error, std::size_t bytes_transferred, boost::asio::streambuf *sBuff)
void finish_read_handler_set (std::string line, boost::asio::streambuf *sBuff)
void write_some_handler_set (const boost::system::error_code &error, std::size_t bytes_transferred)
void write_some_handler_get (const boost::system::error_code &error, std::size_t bytes_transferred)
void read_handler_get (const boost::system::error_code &error, std::size_t bytes_transferred, boost::asio::streambuf *sBuff)

Private Attributes

boost::asio::ip::tcp::socket * mSocket
CraqDataKey currentlySearchingFor
CraqEntry currentlySettingTo
ConnectionState mReady
SpaceContextctx
Network::IOStrandmStrand
bool mTracking
int mTrackNumber
std::vector
< CraqOperationResult * > 
mOperationResultVector
std::vector
< CraqOperationResult * > 
mOperationResultErrorVector
std::vector
< CraqOperationResult * > 
mOperationResultTrackedSetsVector

Member Enumeration Documentation

Enumerator:
READY 
NEED_NEW_SOCKET 
PROCESSING 

Constructor & Destructor Documentation

Sirikata::AsyncConnection::~AsyncConnection ( )

References mSocket, and NEED_NEW_SOCKET.

Sirikata::AsyncConnection::AsyncConnection ( )

References mReady, mTrackNumber, and NEED_NEW_SOCKET.


Member Function Documentation

void Sirikata::AsyncConnection::connect_handler ( const boost::system::error_code &  error) [private]
void Sirikata::AsyncConnection::finish_read_handler_set ( std::string  line,
boost::asio::streambuf *  sBuff 
) [private]
bool Sirikata::AsyncConnection::get ( CraqDataKey dataToGet)
void Sirikata::AsyncConnection::initialize ( boost::asio::ip::tcp::socket *  socket,
boost::asio::ip::tcp::resolver::iterator  it,
SpaceContext spc,
Network::IOStrand strand 
)
void Sirikata::AsyncConnection::read_handler_get ( const boost::system::error_code &  error,
std::size_t  bytes_transferred,
boost::asio::streambuf *  sBuff 
) [private]
void Sirikata::AsyncConnection::read_handler_set ( const boost::system::error_code &  error,
std::size_t  bytes_transferred,
boost::asio::streambuf *  sBuff 
) [private]
AsyncConnection::ConnectionState Sirikata::AsyncConnection::ready ( )

References mReady.

bool Sirikata::AsyncConnection::set ( CraqDataKey dataToSet,
const CraqEntry dataToSetTo,
bool &  track,
int &  trackNum 
)
void Sirikata::AsyncConnection::tick ( std::vector< CraqOperationResult * > &  opResults_get,
std::vector< CraqOperationResult * > &  opResults_error,
std::vector< CraqOperationResult * > &  opResults_trackedSets 
)
void Sirikata::AsyncConnection::write_some_handler_get ( const boost::system::error_code &  error,
std::size_t  bytes_transferred 
) [private]
void Sirikata::AsyncConnection::write_some_handler_set ( const boost::system::error_code &  error,
std::size_t  bytes_transferred 
) [private]

Member Data Documentation

Referenced by initialize().

Referenced by read_handler_set(), and tick().

Referenced by read_handler_get(), and tick().

boost::asio::ip::tcp::socket* Sirikata::AsyncConnection::mSocket [private]

Referenced by get(), initialize(), and set().


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