DUECA/DUSIME
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
dueca::ReplicatorInfo Struct Reference

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

#include <ReplicatorInfo.hxx>

Public Types

enum  MessageType {
  AddPeer , AddEntry , RemoveEntry , RemovePeer ,
  Undefined
}
 defines type of message More...
 
typedef ReplicatorInfo __ThisDCOType__
 typedef for internal reference
 

Public Member Functions

 ReplicatorInfo ()
 default constructor.
 
 ReplicatorInfo (const MessageType &mtype, const peer_id_t &peer_id, const entry_id_t &entry_id, const vstring &name, const vstring &channelname, const vstring &dataclass)
 Constructor with arguments.
 
 ReplicatorInfo (const ReplicatorInfo &o)
 copy constructor.
 
 ReplicatorInfo (::dueca::AmorphReStore &r)
 constructor to restore an ReplicatorInfo from amorphous storage.
 
 ~ReplicatorInfo ()
 destructor.
 
void packData (::dueca::AmorphStore &s) const
 packs the ReplicatorInfo into amorphous storage.
 
void packDataDiff (::dueca::AmorphStore &s, const ReplicatorInfo &ref) const
 packs the ReplicatorInfo into amorphous storage.
 
void unPackData (::dueca::AmorphReStore &s)
 unpacks the ReplicatorInfo from an amorphous storage.
 
void unPackDataDiff (::dueca::AmorphReStore &s)
 unpacks the differences for ReplicatorInfo from an amorphous storage.
 
bool operator== (const ReplicatorInfo &o) const
 Test for equality.
 
bool operator!= (const ReplicatorInfo &o) const
 Test for inequality.
 
ReplicatorInfooperator= (const ReplicatorInfo &o)
 Assignment operator.
 
std::ostream & print (std::ostream &s) const
 prints the ReplicatorInfo to a stream.
 

Static Public Member Functions

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

Public Attributes

MessageType mtype
 type of information message
 
peer_id_t peer_id
 peer id
 
entry_id_t entry_id
 entry id
 
vstring name
 name, used for peer internet address or channel entry label
 
vstring channelname
 channel name
 
vstring dataclass
 data class of the entry
 

Static Public Attributes

static const char *const classname
 The name of this class.
 
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.
 

Detailed Description

Start information for a peer joining a replicator network.

Member Enumeration Documentation

◆ MessageType

defines type of message

Enumerator
AddPeer 

Addition of a new peer, writes peer id, name is net address, and network port in entry_id.

AddEntry 

Add an entry, name is entry label, channelname filled.

RemoveEntry 

Remove an entry, name not filled.

RemovePeer 

Remove an peer, only peer id filled.

Undefined 

default value

Member Function Documentation

◆ operator new()

static void * dueca::ReplicatorInfo::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.

◆ packDataDiff()

void dueca::ReplicatorInfo::packDataDiff ( ::dueca::AmorphStore & s,
const ReplicatorInfo & ref ) const

packs the ReplicatorInfo into amorphous storage.

only differences with a previous object are packed.


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