MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
OpFunc4Base< A1, A2, A3, A4 > Class Template Referenceabstract

#include <OpFuncBase.h>

+ Inheritance diagram for OpFunc4Base< A1, A2, A3, A4 >:
+ Collaboration diagram for OpFunc4Base< A1, A2, A3, A4 >:

Public Member Functions

bool checkFinfo (const Finfo *s) const
 
const OpFuncmakeHopFunc (HopIndex hopIndex) const
 
virtual void op (const Eref &e, A1 arg1, A2 arg2, A3 arg3, A4 arg4) const =0
 
void opBuffer (const Eref &e, double *buf) const
 Executes the OpFunc by converting args. More...
 
string rttiType () const
 
- Public Member Functions inherited from OpFunc
 OpFunc ()
 
unsigned int opIndex () const
 
virtual void opVecBuffer (const Eref &e, double *buf) const
 Executes the OpFunc for all data by converting a vector of args. More...
 
bool setIndex (unsigned int i)
 Used when rebuilding the Fid->OpFunc mapping. More...
 
virtual ~OpFunc ()
 

Additional Inherited Members

- Static Public Member Functions inherited from OpFunc
static const OpFunclookop (unsigned int opIndex)
 
static unsigned int rebuildOpIndex ()
 cleans out the entire Ops vector. Returns size of orig vector. More...
 

Detailed Description

template<class A1, class A2, class A3, class A4>
class OpFunc4Base< A1, A2, A3, A4 >

Definition at line 220 of file OpFuncBase.h.

Member Function Documentation

template<class A1, class A2, class A3, class A4>
bool OpFunc4Base< A1, A2, A3, A4 >::checkFinfo ( const Finfo s) const
inlinevirtual

Implements OpFunc.

Definition at line 223 of file OpFuncBase.h.

223  {
224  return dynamic_cast< const SrcFinfo4< A1, A2, A3, A4 >* >( s );
225  }
template<class A1 , class A2 , class A3 , class A4 >
const OpFunc * OpFunc4Base< A1, A2, A3, A4 >::makeHopFunc ( HopIndex  hopIndex) const
virtual

Implements OpFunc.

Definition at line 330 of file HopFunc.h.

Referenced by SetGet4< A1, A2, A3, A4 >::set().

332 {
333  return new HopFunc4< A1, A2, A3, A4 >( hopIndex );
334 }

+ Here is the caller graph for this function:

template<class A1, class A2, class A3, class A4>
virtual void OpFunc4Base< A1, A2, A3, A4 >::op ( const Eref e,
A1  arg1,
A2  arg2,
A3  arg3,
A4  arg4 
) const
pure virtual

Implemented in HopFunc4< A1, A2, A3, A4 >, EpFunc4< T, A1, A2, A3, A4 >, and OpFunc4< T, A1, A2, A3, A4 >.

Referenced by OpFunc4Base< A1, A2, A3, A4 >::opBuffer(), SrcFinfo4< T1, T2, T3, T4 >::send(), and SetGet4< A1, A2, A3, A4 >::set().

+ Here is the caller graph for this function:

template<class A1, class A2, class A3, class A4>
void OpFunc4Base< A1, A2, A3, A4 >::opBuffer ( const Eref e,
double *  buf 
) const
inlinevirtual

Executes the OpFunc by converting args.

Implements OpFunc.

Definition at line 232 of file OpFuncBase.h.

References Conv< T >::buf2val(), and OpFunc4Base< A1, A2, A3, A4 >::op().

232  {
233  const A1& arg1 = Conv< A1 >::buf2val( &buf );
234  const A2& arg2 = Conv< A2 >::buf2val( &buf );
235  const A3& arg3 = Conv< A3 >::buf2val( &buf );
236  op( e,
237  arg1, arg2, arg3, Conv< A4 >::buf2val( &buf ) );
238  }
virtual void op(const Eref &e, A1 arg1, A2 arg2, A3 arg3, A4 arg4) const =0
Definition: Conv.h:30
static const T & buf2val(double **buf)
Definition: Conv.h:44

+ Here is the call graph for this function:

template<class A1, class A2, class A3, class A4>
string OpFunc4Base< A1, A2, A3, A4 >::rttiType ( ) const
inlinevirtual

Implements OpFunc.

Definition at line 240 of file OpFuncBase.h.

References Conv< T >::rttiType().

240  {
241  return Conv< A1 >::rttiType() + "," + Conv< A2 >::rttiType() +
242  "," + Conv<A3>::rttiType() + "," + Conv<A4>::rttiType();
243  }
static string rttiType()
Definition: Conv.h:82

+ Here is the call graph for this function:


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