MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
DestFinfo Class Reference

#include <DestFinfo.h>

+ Inheritance diagram for DestFinfo:
+ Collaboration diagram for DestFinfo:

Public Member Functions

 DestFinfo (const string &name, const string &doc, OpFunc *func)
 
FuncId getFid () const
 
const OpFuncgetOpFunc () const
 
void registerFinfo (Cinfo *c)
 
string rttiType () const
 
bool strGet (const Eref &tgt, const string &field, string &returnValue) const
 
bool strSet (const Eref &tgt, const string &field, const string &arg) const
 
 ~DestFinfo ()
 
- Public Member Functions inherited from Finfo
virtual bool addMsg (const Finfo *target, ObjId mid, Element *src) const
 
virtual bool checkTarget (const Finfo *target) const
 
const string & docs () const
 Returns documentation string. More...
 
 Finfo (const string &name, const string &doc)
 
virtual vector< string > innerDest () const
 
virtual vector< string > innerSrc () const
 
const string & name () const
 
virtual void postCreationFunc (Id newId, Element *newElm) const
 
virtual ~Finfo ()
 

Private Attributes

FuncId fid_
 
OpFuncfunc_
 

Additional Inherited Members

- Static Public Member Functions inherited from Finfo
static const CinfoinitCinfo ()
 

Detailed Description

Definition at line 18 of file DestFinfo.h.

Constructor & Destructor Documentation

DestFinfo::~DestFinfo ( )

Definition at line 13 of file DestFinfo.cpp.

References func_.

13  {
14  delete func_;
15 }
OpFunc * func_
Definition: DestFinfo.h:39
DestFinfo::DestFinfo ( const string &  name,
const string &  doc,
OpFunc func 
)

Definition at line 17 of file DestFinfo.cpp.

19  : Finfo( name, doc ), func_( func )
20 {
21  ;
22 }
const string & name() const
Definition: Finfo.cpp:80
OpFunc * func_
Definition: DestFinfo.h:39
Finfo(const string &name, const string &doc)
Definition: Finfo.cpp:13

Member Function Documentation

FuncId DestFinfo::getFid ( ) const

Definition at line 45 of file DestFinfo.cpp.

References fid_.

Referenced by SrcFinfo::addMsg(), SetGet::checkSet(), Neutral::child(), Neutral::children(), HSolve::deleteIncomingMessages(), Cinfo::destFinfoName(), Shell::dropClockMsgs(), Element::getInputs(), Element::getInputsWithTgtIndex(), Shell::innerMove(), insertSharedMsgs(), Neutral::isDescendant(), Neutral::parent(), Neutral::path(), HSolveActive::readSynapses(), Cinfo::reportFids(), testMsgField(), and testSendMsg().

46 {
47  return fid_;
48 }
FuncId fid_
Definition: DestFinfo.h:40

+ Here is the caller graph for this function:

const OpFunc * DestFinfo::getOpFunc ( ) const

Definition at line 40 of file DestFinfo.cpp.

References func_.

Referenced by SrcFinfo::addMsg(), SetGet::checkSet(), SrcFinfo::checkTarget(), and localGet().

41 {
42  return func_;
43 }
OpFunc * func_
Definition: DestFinfo.h:39

+ Here is the caller graph for this function:

void DestFinfo::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.

Definition at line 24 of file DestFinfo.cpp.

References Cinfo::baseCinfo(), fid_, Cinfo::findFinfo(), func_, Finfo::name(), Cinfo::overrideFunc(), and Cinfo::registerOpFunc().

25 {
26  if ( c->baseCinfo() ) {
27  const Finfo* bf = c->baseCinfo()->findFinfo( name() );
28  if ( bf ) {
29  const DestFinfo* df = dynamic_cast< const DestFinfo* >( bf );
30  assert( df );
31  fid_ = df->fid_;
32  c->overrideFunc( fid_, func_ );
33  return;
34  }
35  }
36  fid_ = c->registerOpFunc( func_ );
37 // cout << c->name() << "." << name() << ": " << fid_ << endl;
38 }
const Cinfo * baseCinfo() const
Definition: Cinfo.cpp:216
FuncId registerOpFunc(const OpFunc *f)
Definition: Cinfo.cpp:96
FuncId fid_
Definition: DestFinfo.h:40
const string & name() const
Definition: Finfo.cpp:80
void overrideFunc(FuncId fid, const OpFunc *f)
Definition: Cinfo.cpp:103
OpFunc * func_
Definition: DestFinfo.h:39
const Finfo * findFinfo(const string &name) const
Definition: Cinfo.cpp:224
Definition: Finfo.h:12

+ Here is the call graph for this function:

string DestFinfo::rttiType ( ) const
virtual

Returns the documentation string for the Finfo string docs() const; Returns the RTTI type string for the finfo by referring to an internal virtual function. string type() const; Returns the list of subsidiary SrcFinfos. Used in Shared Finfos, empty otherwise. Goes via internal virtual function. vector< string > src() const; Returns the list of subsidiary destFinfos. Used in SharedFinfos and ValueFinfos, empty otherwise. Goes via internal virtual function. vector< string > dest() const; Returns an RTTI type string for this Finfo.

Reimplemented from Finfo.

Definition at line 64 of file DestFinfo.cpp.

References func_, and OpFunc::rttiType().

65 {
66  return func_->rttiType();
67 }
OpFunc * func_
Definition: DestFinfo.h:39
virtual string rttiType() const =0

+ Here is the call graph for this function:

bool DestFinfo::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.

Definition at line 57 of file DestFinfo.cpp.

59 {
60  assert( 0 );
61  return false;
62 }
bool DestFinfo::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.

Definition at line 50 of file DestFinfo.cpp.

52 {
53  assert( 0 );
54  return false;
55 }

Member Data Documentation

FuncId DestFinfo::fid_
private

Definition at line 40 of file DestFinfo.h.

Referenced by getFid(), and registerFinfo().

OpFunc* DestFinfo::func_
private

Definition at line 39 of file DestFinfo.h.

Referenced by getOpFunc(), registerFinfo(), rttiType(), and ~DestFinfo().


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