19 :
Finfo( name, doc ), bindIndex_( BadBindIndex )
72 for ( vector< MsgDigest >::const_iterator
73 i = md.begin(); i != md.end(); ++i ) {
77 for ( vector< Eref >::const_iterator
78 j = i->targets.begin(); j != i->targets.end(); ++j ) {
79 if ( j->dataIndex() ==
ALLDATA ) {
82 unsigned int end = start + e->
numData();
83 for (
unsigned int k = start; k < end; ++k )
SrcFinfo(const string &name, const string &doc)
BindIndex registerBindIndex()
BindIndex getBindIndex() const
bool addMsg(const Finfo *target, ObjId mid, Element *src) const
void addMsgAndFunc(ObjId mid, FuncId fid, BindIndex bindIndex)
Element * element() const
virtual void op(const Eref &e) const =0
virtual bool checkFinfo(const Finfo *s) const =0
const unsigned int ALLDATA
Used by ObjId and Eref.
const vector< MsgDigest > & msgDigest(unsigned int bindIndex) const
void sendBuffer(const Eref &e, double *buf) const
unsigned short bindIndex_
void setBindIndex(BindIndex b)
bool checkTarget(const Finfo *target) const
virtual unsigned int numData() const =0
Returns number of data entries across all nodes.
const OpFunc * getOpFunc() const
virtual unsigned int localDataStart() const =0
Returns index of first data entry on this node.
void send(const Eref &e) const
static const BindIndex BadBindIndex
SrcFinfo0(const string &name, const string &doc)
void registerFinfo(Cinfo *c)