MBDyn-1.7.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
ArrayTplDriveCaller< doublereal > Class Template Reference
Inheritance diagram for ArrayTplDriveCaller< doublereal >:
Collaboration diagram for ArrayTplDriveCaller< doublereal >:

Public Member Functions

 ArrayTplDriveCaller (std::vector< DrivesArray< doublereal > > dc)
 
virtual ~ArrayTplDriveCaller (void)
 
virtual TplDriveCaller
< doublereal > * 
pCopy (void) const
 
virtual std::ostream & Restart (std::ostream &out) const
 
virtual std::ostream & Restart_int (std::ostream &out) const
 
doublereal Get (const doublereal &dVar) const
 
doublereal Get (void) const
 
int getNDrives (void) const
 
- Public Member Functions inherited from TplDriveCaller< doublereal >
virtual ~TplDriveCaller (void)
 
virtual bool bIsDifferentiable (void) const
 
virtual doublereal GetP (void) const
 

Protected Attributes

std::vector< DrivesArray
< doublereal > > 
m_dc
 

Detailed Description

template<>
class ArrayTplDriveCaller< doublereal >

Definition at line 601 of file tpldrive_impl.cc.

Constructor & Destructor Documentation

Definition at line 606 of file tpldrive_impl.cc.

References ASSERT, and ArrayTplDriveCaller< T >::m_dc.

607  : m_dc(dc) {
608  ASSERT(!m_dc.empty());
609  };
std::vector< DrivesArray< doublereal > > m_dc
#define ASSERT(expression)
Definition: colamd.c:977
virtual ArrayTplDriveCaller< doublereal >::~ArrayTplDriveCaller ( void  )
inlinevirtual

Definition at line 611 of file tpldrive_impl.cc.

References ArrayTplDriveCaller< T >::m_dc, and SAFEDELETE.

611  {
612  for (unsigned i = 0; i < m_dc.size(); i++) {
613  SAFEDELETE(m_dc[i].pDriveCaller);
614  }
615  };
std::vector< DrivesArray< doublereal > > m_dc
#define SAFEDELETE(pnt)
Definition: mynewmem.h:710

Member Function Documentation

doublereal ArrayTplDriveCaller< doublereal >::Get ( const doublereal dVar) const
inlinevirtual

Implements TplDriveCaller< doublereal >.

Definition at line 649 of file tpldrive_impl.cc.

References ArrayTplDriveCaller< T >::m_dc.

649  {
650  doublereal v = 0.;
651  for (unsigned i = 0; i < m_dc.size(); i++) {
652  v += m_dc[i].pDriveCaller->dGet(dVar);
653  }
654  return v;
655  };
std::vector< DrivesArray< doublereal > > m_dc
double doublereal
Definition: colamd.c:52
doublereal ArrayTplDriveCaller< doublereal >::Get ( void  ) const
inlinevirtual

Reimplemented from TplDriveCaller< doublereal >.

Definition at line 657 of file tpldrive_impl.cc.

References ArrayTplDriveCaller< T >::m_dc.

657  {
658  doublereal v = 0.;
659  for (unsigned i = 0; i < m_dc.size(); i++) {
660  v += m_dc[i].pDriveCaller->dGet();
661  }
662  return v;
663  };
std::vector< DrivesArray< doublereal > > m_dc
double doublereal
Definition: colamd.c:52
int ArrayTplDriveCaller< doublereal >::getNDrives ( void  ) const
inlinevirtual

Implements TplDriveCaller< doublereal >.

Definition at line 665 of file tpldrive_impl.cc.

References ArrayTplDriveCaller< T >::m_dc.

665  {
666  return m_dc.size();
667  };
std::vector< DrivesArray< doublereal > > m_dc
virtual TplDriveCaller<doublereal>* ArrayTplDriveCaller< doublereal >::pCopy ( void  ) const
inlinevirtual

Implements TplDriveCaller< doublereal >.

Definition at line 618 of file tpldrive_impl.cc.

References ArrayTplDriveCaller< T >::m_dc, and SAFENEWWITHCONSTRUCTOR.

618  {
619  std::vector<DrivesArray<doublereal> > dc(m_dc.size());
620  for (unsigned i = 0; i < m_dc.size(); i++) {
621  dc[i].pDriveCaller = m_dc[i].pDriveCaller->pCopy();
622  dc[i].t = m_dc[i].t;
623  }
624 
625  typedef ArrayTplDriveCaller<doublereal> dc_t;
627 
628  SAFENEWWITHCONSTRUCTOR(pDC, dc_t, dc_t(dc));
629 
630  return pDC;
631  };
std::vector< DrivesArray< doublereal > > m_dc
#define SAFENEWWITHCONSTRUCTOR(pnt, item, constructor)
Definition: mynewmem.h:698
virtual std::ostream& ArrayTplDriveCaller< doublereal >::Restart ( std::ostream &  out) const
inlinevirtual

Implements TplDriveCaller< doublereal >.

Definition at line 634 of file tpldrive_impl.cc.

References ArrayTplDriveCaller< T >::m_dc.

634  {
635  out << "array, " << m_dc.size();
636  for (unsigned i = 0; i < m_dc.size(); i++) {
637  out << ", ", m_dc[i].pDriveCaller->Restart(out);
638  }
639  return out;
640  };
std::vector< DrivesArray< doublereal > > m_dc
virtual std::ostream& ArrayTplDriveCaller< doublereal >::Restart_int ( std::ostream &  out) const
inlinevirtual

Implements TplDriveCaller< doublereal >.

Definition at line 642 of file tpldrive_impl.cc.

References ArrayTplDriveCaller< T >::m_dc.

642  {
643  for (unsigned i = 0; i < m_dc.size(); i++) {
644  out << ", ", m_dc[i].pDriveCaller->Restart(out);
645  }
646  return out;
647  };
std::vector< DrivesArray< doublereal > > m_dc

Member Data Documentation

Definition at line 603 of file tpldrive_impl.cc.


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