DUECA/DUSIME
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
dueca::ReplicatorPeerAcknowledge Struct Reference

Start information for a peer joining a replicator network. More...

Public Types

typedef ReplicatorPeerAcknowledge __ThisDCOType__
 typedef for internal reference
 

Public Member Functions

 ReplicatorPeerAcknowledge ()
 default constructor. More...
 
 ReplicatorPeerAcknowledge (const vstring &peerdata, const uint16_t &peer_id, const bool &reject)
 Constructor with arguments.
 
 ReplicatorPeerAcknowledge (const ReplicatorPeerAcknowledge &o)
 copy constructor. More...
 
 ReplicatorPeerAcknowledge (::dueca::AmorphReStore &r)
 constructor to restore an ReplicatorPeerAcknowledge from amorphous storage. More...
 
 ~ReplicatorPeerAcknowledge ()
 destructor. More...
 
void packData (::dueca::AmorphStore &s) const
 packs the ReplicatorPeerAcknowledge into amorphous storage. More...
 
void packDataDiff (::dueca::AmorphStore &s, const ReplicatorPeerAcknowledge &ref) const
 packs the ReplicatorPeerAcknowledge into amorphous storage. More...
 
void unPackData (::dueca::AmorphReStore &s)
 unpacks the ReplicatorPeerAcknowledge from an amorphous storage. More...
 
void unPackDataDiff (::dueca::AmorphReStore &s)
 unpacks the differences for ReplicatorPeerAcknowledge from an amorphous storage. More...
 
bool operator== (const ReplicatorPeerAcknowledge &o) const
 Test for equality. More...
 
bool operator!= (const ReplicatorPeerAcknowledge &o) const
 Test for inequality. More...
 
ReplicatorPeerAcknowledgeoperator= (const ReplicatorPeerAcknowledge &o)
 Assignment operator. More...
 
std::ostream & print (std::ostream &s) const
 prints the ReplicatorPeerAcknowledge to a stream. More...
 

Static Public Member Functions

static void * operator new (size_t size)
 new operator "new", which places objects not on a heap, but in one of the memory arenas. More...
 
static void operator delete (void *p)
 new operator "delete", to go with the new version of operator new. More...
 
static void * operator new (size_t size, ReplicatorPeerAcknowledge *&o)
 placement "new", needed for stl. More...
 

Public Attributes

vstring peerdata
 Data for the peer, if the master replicator has a channel connection to an application module that vets peer connections, the peer data returned by that module is passed to the newly connected peer.
 
uint16_t peer_id
 issued peer id – for matching response
 
bool reject
 rejection flag
 

Static Public Attributes

static const char *const classname
 The name of this class. More...
 
static const uint32_t magic_check_number
 a "magic" number, hashed out of the class definition, that will be used to check consistency of the sent objects across the dueca nodes. More...
 

Detailed Description

Start information for a peer joining a replicator network.

With an object of this type, the application at the master end can accept or reject peer connections. Data for the peer (limited to 1K) can be added.

At the peer end, this informs of the ID issued by the master, and of optionally peer data from the application

Constructor & Destructor Documentation

◆ ReplicatorPeerAcknowledge() [1/3]

dueca::ReplicatorPeerAcknowledge::ReplicatorPeerAcknowledge ( )

default constructor.

◆ ReplicatorPeerAcknowledge() [2/3]

dueca::ReplicatorPeerAcknowledge::ReplicatorPeerAcknowledge ( const ReplicatorPeerAcknowledge o)

copy constructor.

◆ ReplicatorPeerAcknowledge() [3/3]

dueca::ReplicatorPeerAcknowledge::ReplicatorPeerAcknowledge ( ::dueca::AmorphReStore r)

constructor to restore an ReplicatorPeerAcknowledge from amorphous storage.

◆ ~ReplicatorPeerAcknowledge()

dueca::ReplicatorPeerAcknowledge::~ReplicatorPeerAcknowledge ( )

destructor.

Member Function Documentation

◆ operator new() [1/2]

static void* dueca::ReplicatorPeerAcknowledge::operator new ( size_t  size)
static

new operator "new", which places objects not on a heap, but in one of the memory arenas.

This to speed up memory management.

◆ operator delete()

static void dueca::ReplicatorPeerAcknowledge::operator delete ( void *  p)
static

new operator "delete", to go with the new version of operator new.

◆ operator new() [2/2]

static void* dueca::ReplicatorPeerAcknowledge::operator new ( size_t  size,
ReplicatorPeerAcknowledge *&  o 
)
inlinestatic

placement "new", needed for stl.

◆ packData()

void dueca::ReplicatorPeerAcknowledge::packData ( ::dueca::AmorphStore s) const

packs the ReplicatorPeerAcknowledge into amorphous storage.

◆ packDataDiff()

void dueca::ReplicatorPeerAcknowledge::packDataDiff ( ::dueca::AmorphStore s,
const ReplicatorPeerAcknowledge ref 
) const

packs the ReplicatorPeerAcknowledge into amorphous storage.

only differences with a previous object are packed.

◆ unPackData()

void dueca::ReplicatorPeerAcknowledge::unPackData ( ::dueca::AmorphReStore s)

unpacks the ReplicatorPeerAcknowledge from an amorphous storage.

◆ unPackDataDiff()

void dueca::ReplicatorPeerAcknowledge::unPackDataDiff ( ::dueca::AmorphReStore s)

unpacks the differences for ReplicatorPeerAcknowledge from an amorphous storage.

◆ operator==()

bool dueca::ReplicatorPeerAcknowledge::operator== ( const ReplicatorPeerAcknowledge o) const

Test for equality.

◆ operator!=()

bool dueca::ReplicatorPeerAcknowledge::operator!= ( const ReplicatorPeerAcknowledge o) const
inline

Test for inequality.

◆ operator=()

ReplicatorPeerAcknowledge& dueca::ReplicatorPeerAcknowledge::operator= ( const ReplicatorPeerAcknowledge o)

Assignment operator.

◆ print()

std::ostream& dueca::ReplicatorPeerAcknowledge::print ( std::ostream &  s) const

prints the ReplicatorPeerAcknowledge to a stream.

Member Data Documentation

◆ classname

const char* const dueca::ReplicatorPeerAcknowledge::classname
static

The name of this class.

◆ magic_check_number

const uint32_t dueca::ReplicatorPeerAcknowledge::magic_check_number
static

a "magic" number, hashed out of the class definition, that will be used to check consistency of the sent objects across the dueca nodes.


The documentation for this struct was generated from the following file: