The C++ framework for developing highly scalable, high performance servers on Windows platforms.

CStreamSocketBroadcastableConnectionCollection Class Reference

Inheritance diagram for CStreamSocketBroadcastableConnectionCollection:
Collaboration diagram for CStreamSocketBroadcastableConnectionCollection:

List of all members.

Public Types

typedef std::list
< ConnectionId
Connections
typedef ULONG_PTR ConnectionId

Public Member Functions

 CStreamSocketBroadcastableConnectionCollection (JetByteTools::IO::IAllocateBufferHandles &allocator)
 CStreamSocketBroadcastableConnectionCollection (const CStreamSocketBroadcastableConnectionCollection &rhs)
CStreamSocketBroadcastableConnectionCollectionoperator= (const CStreamSocketBroadcastableConnectionCollection &rhs)
void Broadcast (const JetByteTools::IO::IBuffer &buffer) const
void Broadcast (const JetByteTools::IO::CBufferChain &buffers) const
void BroadcastToAllExcept (const JetByteTools::IO::IBuffer &buffer, const JetByteTools::Socket::IStreamSocket &socket) const
void BroadcastToAllExcept (const JetByteTools::IO::CBufferChain &buffers, const JetByteTools::Socket::IStreamSocket &socket) const
void Broadcast (const Connections &connections, const JetByteTools::IO::IBuffer &buffer) const
void Broadcast (const Connections &connections, const JetByteTools::IO::CBufferChain &buffers) const
bool IsEmpty () const
ConnectionId AddConnection (IStreamSocket &socket)
ConnectionId GetConnectionId (const IStreamSocket &socket) const
CSmartStreamSocket GetConnection (ConnectionId id) const
void RemoveConnection (const IStreamSocket &socket)
void RemoveConnection (ConnectionId id)
bool RemoveConnectionIfPresent (const IStreamSocket &socket)
bool RemoveConnectionIfPresent (ConnectionId id)

Static Public Attributes

static
JETBYTE_CONSTEXPR
ConnectionId 
InvalidConnectionId = 0

Protected Types

typedef std::map
< ConnectionId,
IStreamSocket * > 
ConnectionMap

Protected Attributes

JetByteTools::Core::CSingleWriterMultipleReaderLock m_readerWriterLock
ConnectionMap m_connectionMap


Member Typedef Documentation

typedef std::list<ConnectionId> Connections

typedef ULONG_PTR ConnectionId [inherited]

typedef std::map<ConnectionId, IStreamSocket *> ConnectionMap [protected, inherited]


Constructor & Destructor Documentation


Member Function Documentation

void Broadcast ( const JetByteTools::IO::IBuffer &  buffer  )  const

void Broadcast ( const JetByteTools::IO::CBufferChain buffers  )  const

void BroadcastToAllExcept ( const JetByteTools::IO::IBuffer &  buffer,
const JetByteTools::Socket::IStreamSocket socket 
) const

void BroadcastToAllExcept ( const JetByteTools::IO::CBufferChain buffers,
const JetByteTools::Socket::IStreamSocket socket 
) const

void Broadcast ( const Connections connections,
const JetByteTools::IO::IBuffer &  buffer 
) const

void Broadcast ( const Connections connections,
const JetByteTools::IO::CBufferChain buffers 
) const

bool IsEmpty (  )  const [inherited]

CStreamSocketConnectionCollection::ConnectionId AddConnection ( IStreamSocket socket  )  [inherited]

CStreamSocketConnectionCollection::ConnectionId GetConnectionId ( const IStreamSocket socket  )  const [inherited]

CSmartStreamSocket GetConnection ( ConnectionId  id  )  const [inherited]

void RemoveConnection ( const IStreamSocket socket  )  [inherited]

void RemoveConnection ( ConnectionId  id  )  [inherited]

bool RemoveConnectionIfPresent ( const IStreamSocket socket  )  [inherited]

bool RemoveConnectionIfPresent ( ConnectionId  id  )  [inherited]


Member Data Documentation

JETBYTE_CONSTEXPR ConnectionId InvalidConnectionId = 0 [static, inherited]

JetByteTools::Core::CSingleWriterMultipleReaderLock m_readerWriterLock [mutable, protected, inherited]

ConnectionMap m_connectionMap [protected, inherited]


Generated on Sun Sep 12 19:10:39 2021 for The Server Framework - v7.4 by doxygen 1.5.3