#include <SrcFinfo.h>
Public Member Functions | |
SrcFinfo (const string &name, const string &doc) | |
~SrcFinfo () | |
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 |
BindIndex | getBindIndex () const |
void | setBindIndex (BindIndex b) |
bool | checkTarget (const Finfo *target) const |
bool | addMsg (const Finfo *target, ObjId mid, Element *src) const |
virtual void | sendBuffer (const Eref &e, double *buf) const =0 |
Static Public Attributes | |
static const BindIndex | BadBindIndex = 65535 |
This set of classes define Message Sources. Their main job is to supply a type-safe send operation, and to provide typechecking for it.
SrcFinfo::SrcFinfo | ( | const string & | name, | |
const string & | doc | |||
) |
SrcFinfo::~SrcFinfo | ( | ) | [inline] |
First checks that the target will work, then adds the Msg.
References Element::addMsgAndFunc(), OpFunc::checkFinfo(), d, DestFinfo::getFid(), and DestFinfo::getOpFunc().
bool SrcFinfo::checkTarget | ( | const Finfo * | target | ) | const |
Checks that the target will work for this Msg.
References OpFunc::checkFinfo(), d, and DestFinfo::getOpFunc().
BindIndex SrcFinfo::getBindIndex | ( | ) | const |
References BadBindIndex.
Referenced by convertConcToNumRateUsingVol(), Element::getMsgTargets(), getReactantVols(), innerCopyMsgs(), SrcFinfo6< T1, T2, T3, T4, T5, T6 >::send(), SrcFinfo5< T1, T2, T3, T4, T5 >::send(), SrcFinfo4< T1, T2, T3, T4 >::send(), SrcFinfo3< T1, T2, T3 >::send(), SrcFinfo2< T1, T2 >::send(), SrcFinfo1< T >::send(), SrcFinfo0::send(), SrcFinfo2< T1, T2 >::sendTo(), SrcFinfo1< T >::sendTo(), SrcFinfo1< T >::sendVec(), Element::showMsg(), Cinfo::srcFinfoName(), and testSendMsg().
void SrcFinfo::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::registerBindIndex().
virtual void SrcFinfo::sendBuffer | ( | const Eref & | e, | |
double * | buf | |||
) | const [pure virtual] |
Sends contents of buffer on to msg targets Buffer has a header with the TgtInfo.
Implemented in SrcFinfo0, SrcFinfo1< T >, SrcFinfo2< T1, T2 >, SrcFinfo3< T1, T2, T3 >, SrcFinfo4< T1, T2, T3, T4 >, SrcFinfo5< T1, T2, T3, T4, T5 >, and SrcFinfo6< T1, T2, T3, T4, T5, T6 >.
void SrcFinfo::setBindIndex | ( | BindIndex | b | ) |
Referenced by testSendMsg().
bool SrcFinfo::strGet | ( | const Eref & | tgt, | |
const string & | field, | |||
string & | returnValue | |||
) | const [inline, virtual] |
Function to return value of field into a string argument. Returns true on success. Normally called only from SetGet::strGet.
Implements Finfo.
bool SrcFinfo::strSet | ( | const Eref & | tgt, | |
const string & | field, | |||
const string & | arg | |||
) | const [inline, virtual] |
Function to set this field using a string argument. Returns true on success. Normally called only from SetGet::strSet.
Implements Finfo.
const BindIndex SrcFinfo::BadBindIndex = 65535 [static] |
This set of classes define Message Sources. Their main job is to supply a type-safe send operation, and to provide typechecking for it.
Referenced by getBindIndex().