SharedFinfo Class Reference

#include <SharedFinfo.h>

Inheritance diagram for SharedFinfo:
Inheritance graph
[legend]
Collaboration diagram for SharedFinfo:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SharedFinfo (const string &name, const string &doc, Finfo **entries, unsigned int numEntries)
 ~SharedFinfo ()
void registerFinfo (Cinfo *c)
bool strSet (const Eref &tgt, const string &field, const string &arg) const
bool strGet (const Eref &tgt, const string &field, string &returnValue) const
bool checkTarget (const Finfo *target) const
bool addMsg (const Finfo *target, ObjId mid, Element *src) const
const vector< SrcFinfo * > & src () const
const vector< Finfo * > & dest () const
vector< string > innerSrc () const
vector< string > innerDest () const
string rttiType () const
 This always returns void. We need to check the subsidiary Finfos.

Detailed Description

This is a SharedFinfo, which wraps an arbitrary set of regular Src and Dest Messages. Its main job is to do typechecking for setting up multiple data streams to go across the same Msg.


Constructor & Destructor Documentation

SharedFinfo::SharedFinfo ( const string &  name,
const string &  doc,
Finfo **  entries,
unsigned int  numEntries 
)
SharedFinfo::~SharedFinfo (  )  [inline]

Member Function Documentation

bool SharedFinfo::addMsg ( const Finfo target,
ObjId  mid,
Element src 
) const

First calls checkTarget on all targets, then sets up message. Returns true on success.

References checkTarget(), Msg::e1(), Msg::e2(), Msg::getMsg(), Element::getName(), and Element::id().

Here is the call graph for this function:

bool SharedFinfo::checkTarget ( const Finfo target  )  const

Checks that the type of target Finfo matches self, and is safe to exchange messages with.

It is possible that we have DestFinfos in this SharedFinfo, that have not been registered. So we need to scan through. Note that the register operation overwrites values if they already exist. Best not to have conflicts!.

Referenced by addMsg().

const vector< Finfo * > & SharedFinfo::dest (  )  const

Referenced by insertSharedMsgs().

vector< string > SharedFinfo::innerDest (  )  const [virtual]

Returns subsidiary DestFinfos

Reimplemented from Finfo.

vector< string > SharedFinfo::innerSrc (  )  const [virtual]

Returns subsidiary SrcFinfos

Reimplemented from Finfo.

void SharedFinfo::registerFinfo ( Cinfo c  )  [virtual]

Returns string-ified form to handle template expectations for name field string getName() const; Assign function Ids, bindIndex and so on.

Implements Finfo.

References Cinfo::registerFinfo().

Here is the call graph for this function:

string SharedFinfo::rttiType (  )  const [virtual]

This always returns void. We need to check the subsidiary Finfos.

Reimplemented from Finfo.

const vector< SrcFinfo * > & SharedFinfo::src (  )  const
bool SharedFinfo::strGet ( const Eref tgt,
const string &  field,
string &  returnValue 
) const [virtual]

Function to return value of field into a string argument. Returns true on success. Normally called only from SetGet::strGet.

Implements Finfo.

bool SharedFinfo::strSet ( const Eref tgt,
const string &  field,
const string &  arg 
) const [virtual]

Function to set this field using a string argument. Returns true on success. Normally called only from SetGet::strSet.

Implements Finfo.


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

Generated on 1 Jul 2015 for MOOSE by  doxygen 1.6.1