DUECA/DUSIME
Loading...
Searching...
No Matches
dueca::dueca::ChannelDistribution Struct Reference

An automatically generated class. More...

#include <StreamReaderLatest.hxx>

Public Types

enum  Distribution {
  SOLO_SEND , JOIN_MASTER , MULTI_SEND , NO_OPINION ,
  CONFLICT
}
 Enumerated type for an automatically generated object class. More...
typedef ChannelDistribution __ThisDCOType__
 typedef for internal reference

Public Member Functions

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

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.
static void * operator new (size_t size, void *mem)
 accompanying placement operator "new"
static void operator delete (void *p)
 new operator "delete", to go with the new version of operator new.
static void * operator new (size_t size, ChannelDistribution *&o)
 placement "new", needed for stl.

Public Attributes

Distribution distribution
 The value of the distribution for this object.

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.

Friends

const ChannelDistribution operator| (const ChannelDistribution &d1, const ChannelDistribution &d2)
 Combine two distribution types.

Detailed Description

An automatically generated class.

Member Enumeration Documentation

◆ Distribution

Enumerated type for an automatically generated object class.

Enumerator
SOLO_SEND 

only one channel end is SENDING or SENDING_RECEIVING

JOIN_MASTER 

Multiple channel ends can send.

Only one end is the JOIN_MASTER, and this end receives all events (in such cases only event channels have a useful application) and re-sends these

MULTI_SEND 

Multiple channel ends can send.

Each channel end independently sends its data to all clients. Is disabled for the time being, questionable whether this is practical.

NO_OPINION 

The organisation of the data distribution is not challenged or changed.

CONFLICT 

This can be the result of a combination of two incompatible distribution types.

Member Function Documentation

◆ operator new()

void * dueca::dueca::ChannelDistribution::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::dueca::ChannelDistribution::packDataDiff ( ::dueca::AmorphStore & s,
const ChannelDistribution & ref ) const

packs the ChannelDistribution into amorphous storage.

only differences with a previous object are packed.

◆ operator|

const ChannelDistribution operator| ( const ChannelDistribution & d1,
const ChannelDistribution & d2 )
friend

Combine two distribution types.

May produce a CONFLICT value.


The documentation for this struct was generated from the following file:
  • /home/abuild/rpmbuild/BUILD/dueca-4.3.0-build/dueca-4.3.0/dueca/StreamReaderLatest.hxx