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

#include <Eref.h>

+ Collaboration diagram for Eref:

Public Member Functions

char * data () const
 
unsigned int dataIndex () const
 
Elementelement () const
 
 Eref ()
 
 Eref (Element *e, unsigned int index, unsigned int field=0)
 
unsigned int fieldIndex () const
 
unsigned int getNode () const
 
Id id () const
 
bool isDataHere () const
 
const vector< MsgDigest > & msgDigest (unsigned int bindIndex) const
 
ObjId objId () const
 

Private Attributes

Elemente_
 
unsigned int f_
 
unsigned int i_
 

Friends

ostream & operator<< (ostream &s, const Eref &e)
 

Detailed Description

Definition at line 26 of file Eref.h.

Constructor & Destructor Documentation

Eref::Eref ( )

Definition at line 13 of file Eref.cpp.

14  : e_( 0 ), i_( 0 ), f_( 0 )
15 {
16  ;
17 }
unsigned int f_
Definition: Eref.h:95
unsigned int i_
Definition: Eref.h:94
Element * e_
Definition: Eref.h:93
Eref::Eref ( Element e,
unsigned int  index,
unsigned int  field = 0 
)

Definition at line 19 of file Eref.cpp.

20  : e_( e ), i_( index ), f_( field )
21 {
22  ;
23 }
unsigned int f_
Definition: Eref.h:95
unsigned int i_
Definition: Eref.h:94
Element * e_
Definition: Eref.h:93

Member Function Documentation

char * Eref::data ( ) const

Returns data entry.

Definition at line 41 of file Eref.cpp.

References Element::data(), e_, f_, i_, isDataHere(), and Element::rawIndex().

Referenced by ReadCell::addChannelMessage(), addSpine(), Streamer::addTable(), benchmarkMsg(), ReadSwc::build(), Dsolve::build(), Neuron::buildElist(), buildFromProto(), Dsolve::calcJunction(), checkArg1(), SteadyState::classifyState(), Shell::cleanSimulation(), Shell::destroy(), ReadCspace::expandEnzyme(), ReadCspace::expandReaction(), getEpFuncData(), Neuron::getExprElist(), Neuron::getExprVal(), getShell(), handle_keyboard_interrupts(), init(), MarkovSolverBase::init(), isDoingReinit(), Shell::isRunning(), Shell::launchParser(), makeCompt(), ReadCspace::makeMolecule(), ReadCspace::makePlots(), makeReacTest(), makeStandardElements(), Dsolve::mapChansBetweenDsolves(), Dsolve::mapDiffPoolsBetweenDsolves(), mapVoxelsBetweenMeshes(), Dsolve::mapXfersBetweenDsolves(), OpFunc0< T >::op(), OpFunc1< T, A >::op(), OpFunc2< T, A1, A2 >::op(), EpFunc0< T >::op(), OpFunc3< T, A1, A2, A3 >::op(), EpFunc1< T, ProcPtr >::op(), OpFunc4< T, A1, A2, A3, A4 >::op(), EpFunc2< T, A1, A2 >::op(), OpFunc5< T, A1, A2, A3, A4, A5 >::op(), EpFunc3< T, A1, A2, A3 >::op(), OpFunc6< T, A1, A2, A3, A4, A5, A6 >::op(), EpFunc4< T, A1, A2, A3, A4 >::op(), EpFunc5< T, A1, A2, A3, A4, A5 >::op(), EpFunc6< T, A1, A2, A3, A4, A5, A6 >::op(), HSolveUtils::rates(), Table::reinit(), Streamer::reinit(), SpikeGenStruct::reinit(), Clock::reportClock(), GetOpFunc< T, A >::returnOp(), GetOpFunc1< T, L, A >::returnOp(), GetEpFunc1< T, L, A >::returnOp(), SpikeGenStruct::send(), Ksolve::setDsolve(), Gsolve::setDsolve(), Stoich::setDsolve(), Stoich::setElist(), MarkovRateTable::setInt2dChildTable(), Stoich::setKsolve(), ZombieReac::setSolver(), ZombieMMenz::setSolver(), ZombieEnz::setSolver(), Gsolve::setStoich(), SteadyState::setStoich(), Ksolve::setStoich(), Dsolve::setStoich(), Cell::setupSolver(), MarkovRateTable::setVtChildTable(), testAssortedMsg(), testBuildStoich(), testCalcJunction(), testCellDiffn(), testChildren(), testClock(), testClockMessaging(), testCopy(), testCopyFieldElement(), testCopyMsgOps(), testCylDiffn(), testCylDiffnWithStoich(), testDescendant(), testFibonacci(), testFilterOffNodeTargets(), testFindModelParent(), testGetMsg(), testGetMsgs(), testInterNodeOps(), testMMenz(), testMMenzProcess(), testMove(), testMpiFibonacci(), testMsgElementListing(), testObjIdToAndFromPath(), testPoolVolumeScaling(), testReacVolumeScaling(), testReadKkit(), ReadCspace::testReadModel(), testReMesh(), testRunGsolve(), testRunKsolve(), testSendSpike(), testSetupReac(), testSharedMsg(), testShellAddMsg(), testShellParserCreateDelete(), testShellParserQuit(), testShellParserStart(), testShellSetGet(), testSmallCellDiffn(), testStats(), testSyncSynapseSize(), testTable(), testTaperingCylDiffn(), testTreeTraversal(), testTwoReacGetNeighbors(), testVolScaling(), testWildcard(), verifyKids(), ZombieCaConc::vSetSolver(), ZombieHHChannel::vSetSolver(), ZombieCompartment::vSetSolver(), ZombieFunction::zombify(), CplxEnzBase::zombify(), ReacBase::zombify(), EnzBase::zombify(), CaConcBase::zombify(), PoolBase::zombify(), HHChannelBase::zombify(), and moose::CompartmentBase::zombify().

42 {
43  assert( isDataHere() );
44  return e_->data( e_->rawIndex( i_ ), f_ );
45 }
bool isDataHere() const
Definition: Eref.cpp:47
unsigned int f_
Definition: Eref.h:95
unsigned int i_
Definition: Eref.h:94
virtual char * data(unsigned int rawIndex, unsigned int fieldIndex=0) const =0
virtual unsigned int rawIndex(unsigned int dataIndex) const =0
Element * e_
Definition: Eref.h:93

+ Here is the call graph for this function:

Element* Eref::element ( ) const
inline

Returns Element part

Definition at line 42 of file Eref.h.

Referenced by Clock::buildTicks(), Neutral::buildTree(), Neutral::child(), Neutral::children(), PostMaster::clearPendingRecv(), convertConcToNumRateUsingMesh(), convertConcToNumRateUsingVol(), HopFunc1< A >::dataOpVec(), Neutral::destroy(), PostMaster::dispatchSetBuf(), filterOffNodeTargets(), OneToAllMsg::firstTgt(), SingleMsg::firstTgt(), OneToOneDataIndexMsg::firstTgt(), OneToOneMsg::firstTgt(), DiagonalMsg::firstTgt(), SparseMsg::firstTgt(), Neutral::getClass(), Neutral::getDestFields(), Neutral::getDt(), Neutral::getIncomingMsgs(), GetHopFunc< A >::getLocalFieldVec(), Neutral::getMsgDestFunctions(), Neutral::getMsgDests(), GetHopFunc< A >::getMultiNodeVec(), Neutral::getName(), Neutral::getNeighbors(), Neutral::getNumData(), Neutral::getNumField(), EnzBase::getNumPrd(), ReacBase::getNumPrd(), EnzBase::getNumSub(), ReacBase::getNumSub(), Neutral::getOutgoingMsgs(), getReactantVols(), Neutral::getSourceFields(), Neutral::getTick(), Neutral::getValueFields(), innerGetVec(), Neutral::isA(), Neutral::isDescendant(), HopFunc1< A >::localFieldOpVec(), localGet(), GetHopFunc< A >::opGetVec(), HopFunc1< A >::opVec(), HopFunc2< A1, A2 >::opVec(), OpFunc1Base< ProcPtr >::opVecBuffer(), OpFunc2Base< A1, A2 >::opVecBuffer(), Neutral::path(), Arith::process(), Table::reinit(), Streamer::reinit(), moose::VClamp::reinit(), Adaptor::reinit(), PostMaster::remoteFieldGetVec(), PostMaster::remoteGet(), PostMaster::remoteGetVec(), SrcFinfo0::send(), SrcFinfo2< T1, T2 >::send(), SrcFinfo3< T1, T2, T3 >::send(), SrcFinfo4< T1, T2, T3, T4 >::send(), SrcFinfo5< T1, T2, T3, T4, T5 >::send(), SrcFinfo6< T1, T2, T3, T4, T5, T6 >::send(), SrcFinfo2< T1, T2 >::sendTo(), ChemCompt::setEntireVolume(), Gsolve::setN(), Neutral::setName(), Gsolve::setNinit(), Neutral::setNumData(), Neutral::setNumField(), Neutral::setTick(), testCreateMsg(), testFibonacci(), testMsgField(), testSendMsg(), testShellAddMsg(), NeuroMesh::transmitSpineInfo(), Pool::vGetIsBuffered(), HHChannel2D::vReinit(), HHChannel::vReinit(), and Pool::vSetIsBuffered().

43  {
44  return e_;
45  }
Element * e_
Definition: Eref.h:93
unsigned int Eref::fieldIndex ( ) const
inline

Returns field index, for now typecast to unsigned int. This is really an extra bit of baggage used here not for immediate lookup, but to pass to EpFuncs that know how to use this for lookup.

Definition at line 61 of file Eref.h.

Referenced by Synapse::addSpike(), PostMaster::addToSendBuf(), MeshEntry::getCoordinates(), MeshEntry::getDiffusionArea(), MeshEntry::getDiffusionScaling(), MeshEntry::getDimensions(), Neutral::getFieldIndex(), Spine::getHeadDiameter(), Spine::getHeadLength(), Element::getInputsWithTgtIndex(), MeshEntry::getMeshType(), MeshEntry::getNeighbors(), Spine::getShaftDiameter(), Spine::getShaftLength(), Synapse::getTopSpike(), MeshEntry::getVolume(), Neutral::path(), Spine::setHeadDiameter(), Spine::setHeadLength(), Spine::setHeadVolume(), Spine::setShaftDiameter(), and Spine::setShaftLength().

62  {
63  return f_;
64  }
unsigned int f_
Definition: Eref.h:95

+ Here is the caller graph for this function:

unsigned int Eref::getNode ( ) const

Returns node upon which specified data entry resides . If this is a GlobalElement then it returns the local node.

Definition at line 52 of file Eref.cpp.

References e_, Element::getNode(), and i_.

Referenced by PostMaster::dispatchSetBuf(), filterOffNodeTargets(), HopFunc1< A >::localFieldOpVec(), GetHopFunc< A >::opGetVec(), HopFunc1< A >::opVec(), PostMaster::remoteFieldGetVec(), and PostMaster::remoteGet().

53 {
54  return e_->getNode( i_ );
55 }
unsigned int i_
Definition: Eref.h:94
virtual unsigned int getNode(unsigned int dataIndex) const =0
Returns node number of specified dataIndex.
Element * e_
Definition: Eref.h:93

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Id Eref::id ( ) const

Returns the Id corresponding to the Eref. Loses information.

Definition at line 62 of file Eref.cpp.

References e_, and Element::id().

Referenced by Dsolve::buildMeshJunctions(), Dsolve::buildNeuroMeshJunctions(), Neuron::buildSegmentTree(), Dsolve::convertIdToPoolIndex(), HHChannel2D::createGate(), HHChannel2D::destroyGate(), HHChannel::destroyGate(), Neutral::getId(), Neutral::getMsgDestFunctions(), Neutral::getMsgDests(), Neutral::getNeighbors(), Gsolve::getPoolIndex(), Ksolve::getPoolIndex(), Stoich::getR1(), Stoich::getR1offset1(), Stoich::getR1offset2(), Stoich::getR2(), Neuron::getSpineIdsFromCompartmentIds(), PsdMesh::handlePsdList(), SpineMesh::handleSpineList(), lookupVolumeFromMesh(), Cell::reinit(), Table::reinit(), Streamer::reinit(), HHGate::setAlpha(), HHGate::setBeta(), HHGate::setDivs(), Stoich::setElist(), Stoich::setEnzK1(), Stoich::setEnzK2(), Stoich::setEnzK3(), Stoich::setFunctionExpr(), HHGate::setMax(), HHGate::setMin(), HHGate::setMinfinity(), Stoich::setMMenzKcat(), Stoich::setMMenzKm(), Neutral::setName(), Dsolve::setPath(), Stoich::setReacKb(), Stoich::setReacKf(), HHGate::setTableA(), HHGate::setTableB(), HHGate::setTau(), HHGate::setupAlpha(), HHGate::setupGate(), HHGate::setupTau(), HHGate::setUseInterpolation(), HHChannel::vCreateGate(), ZombieCaConc::vCurrent(), ZombieCaConc::vGetCa(), ZombieCaConc::vGetCaBasal(), ZombieCaConc::vGetCeiling(), ZombieCompartment::vGetCm(), ZombieHHChannel::vGetEk(), ZombieCompartment::vGetEm(), ZombieCaConc::vGetFloor(), ZombieHHChannel::vGetGbar(), ZombieHHChannel::vGetGk(), ZombieHHChannel::vGetIk(), ZombieCompartment::vGetIm(), ZombieCompartment::vGetInitVm(), ZombieCompartment::vGetInject(), ZombieHHChannel::vGetInstant(), ZombieCompartment::vGetRa(), ZombieCompartment::vGetRm(), ZombieCompartment::vGetVm(), ZombieHHChannel::vGetX(), ZombieHHChannel::vGetY(), ZombieHHChannel::vGetZ(), ZombieCompartment::vHandleChannel(), ZombieHHChannel::vHandleConc(), ZombieCompartment::vInjectMsg(), ZombieCaConc::vSetB(), ZombieCaConc::vSetCa(), ZombieCaConc::vSetCaBasal(), ZombieCaConc::vSetCeiling(), ZombieCompartment::vSetCm(), ZombieHHChannel::vSetEk(), ZombieCompartment::vSetEm(), ZombieCaConc::vSetFloor(), ZombieHHChannel::vSetGbar(), ZombieHHChannel::vSetGk(), ZombieCompartment::vSetInitVm(), ZombieCompartment::vSetInject(), ZombieHHChannel::vSetInstant(), ZombieHHChannel::vSetModulation(), ZombieCompartment::vSetRa(), ZombieCompartment::vSetRm(), ZombieCaConc::vSetTau(), ZombieCompartment::vSetVm(), ZombieHHChannel::vSetX(), ZombieHHChannel::vSetXpower(), ZombieHHChannel::vSetY(), ZombieHHChannel::vSetYpower(), ZombieHHChannel::vSetZ(), ZombieHHChannel::vSetZpower(), HSolve::zombify(), and Stoich::zombifyModel().

63 {
64  return e_->id();
65 }
Id id() const
Definition: Element.cpp:71
Element * e_
Definition: Eref.h:93

+ Here is the call graph for this function:

bool Eref::isDataHere ( ) const

True if the data are on the current node

Definition at line 47 of file Eref.cpp.

References e_, Element::getNode(), i_, and Shell::myNode().

Referenced by data(), Neutral::getNumField(), Neutral::setNumField(), OneToOneMsg::sources(), and OneToOneMsg::targets().

48 {
49  return ( e_->getNode( i_ ) == Shell::myNode() );
50 }
unsigned int i_
Definition: Eref.h:94
virtual unsigned int getNode(unsigned int dataIndex) const =0
Returns node number of specified dataIndex.
static unsigned int myNode()
Element * e_
Definition: Eref.h:93

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const vector< MsgDigest > & Eref::msgDigest ( unsigned int  bindIndex) const

Returns the digested version of the specified msgsrc. If the message has changed, this call triggers the digestion operation.

Definition at line 67 of file Eref.cpp.

References Element::cinfo(), e_, i_, Element::msgDigest(), and Cinfo::numBindIndex().

Referenced by Element::getMsgTargets(), SrcFinfo0::send(), SrcFinfo1< T >::send(), SrcFinfo2< T1, T2 >::send(), SrcFinfo3< T1, T2, T3 >::send(), SrcFinfo4< T1, T2, T3, T4 >::send(), SrcFinfo5< T1, T2, T3, T4, T5 >::send(), SrcFinfo6< T1, T2, T3, T4, T5, T6 >::send(), SrcFinfo1< T >::sendTo(), SrcFinfo2< T1, T2 >::sendTo(), and SrcFinfo1< T >::sendVec().

68 {
69  return e_->msgDigest( i_ * e_->cinfo()->numBindIndex() + bindIndex );
70 }
const vector< MsgDigest > & msgDigest(unsigned int index)
Definition: Element.cpp:289
unsigned int i_
Definition: Eref.h:94
const Cinfo * cinfo() const
Definition: Element.cpp:66
unsigned int numBindIndex() const
Definition: Cinfo.cpp:265
Element * e_
Definition: Eref.h:93

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ObjId Eref::objId ( ) const

Returns the ObjId corresponding to the Eref. All info is kept.

Definition at line 57 of file Eref.cpp.

References e_, f_, i_, and Element::id().

Referenced by PostMaster::addToSendBuf(), PostMaster::addToSetBuf(), addToTestBuf(), Neuron::buildElist(), Neutral::child(), Neutral::destroy(), Function::getExpr(), Neuron::getExprElist(), Neuron::getExprVal(), Neutral::getObjId(), Function::innerSetExpr(), Neutral::isDescendant(), Neutral::parent(), Neutral::path(), Arith::process(), PostMaster::remoteFieldGetVec(), PostMaster::remoteGet(), PostMaster::remoteGetVec(), moose::CompartmentBase::setGeomAndElec(), ElementValueFinfo< T, F >::strGet(), LookupElementValueFinfo< T, L, F >::strGet(), ValueFinfo< T, F >::strGet(), LookupValueFinfo< T, L, F >::strGet(), ReadOnlyElementValueFinfo< T, F >::strGet(), ReadOnlyLookupElementValueFinfo< T, L, F >::strGet(), ReadOnlyValueFinfo< T, F >::strGet(), ReadOnlyLookupValueFinfo< T, L, F >::strGet(), ElementValueFinfo< T, F >::strSet(), LookupElementValueFinfo< T, L, F >::strSet(), LookupValueFinfo< T, L, F >::strSet(), ValueFinfo< T, F >::strSet(), and testGetMsg().

58 {
59  return ObjId( e_->id(), i_, f_ );
60 }
Definition: ObjId.h:20
unsigned int f_
Definition: Eref.h:95
Id id() const
Definition: Element.cpp:71
unsigned int i_
Definition: Eref.h:94
Element * e_
Definition: Eref.h:93

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Friends And Related Function Documentation

ostream& operator<< ( ostream &  s,
const Eref e 
)
friend

Member Data Documentation

Element* Eref::e_
private

Definition at line 93 of file Eref.h.

Referenced by data(), getNode(), id(), isDataHere(), msgDigest(), objId(), and operator<<().

unsigned int Eref::f_
private

Definition at line 95 of file Eref.h.

Referenced by data(), objId(), and operator<<().

unsigned int Eref::i_
private

Definition at line 94 of file Eref.h.

Referenced by data(), getNode(), isDataHere(), msgDigest(), objId(), and operator<<().


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