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

Public Member Functions

 CompTplDriveCaller (std::vector< DriveCaller * > &dc)
 
 ~CompTplDriveCaller (void)
 
virtual TplDriveCaller< Mat3x3 > * pCopy (void) const
 
virtual std::ostream & Restart (std::ostream &out) const
 
virtual std::ostream & Restart_int (std::ostream &out) const
 
Mat3x3 Get (const doublereal &dVar) const
 
Mat3x3 Get (void) const
 
bool bIsDifferentiable (void) const
 
Mat3x3 GetP (void) const
 
int getNDrives (void) const
 
- Public Member Functions inherited from TplDriveCaller< Mat3x3 >
virtual ~TplDriveCaller (void)
 
- Public Member Functions inherited from DriveOwner
 DriveOwner (const DriveCaller *pDC=0)
 
 DriveOwner (const DriveOwner &drive)
 
virtual ~DriveOwner (void)
 
void Set (const DriveCaller *pDC)
 
DriveCallerpGetDriveCaller (void) const
 
doublereal dGet (const doublereal &dVar) const
 
doublereal dGet (void) const
 
bool bIsDifferentiable (void) const
 
doublereal dGetP (const doublereal &dVar) const
 
doublereal dGetP (void) const
 

Protected Attributes

std::vector< DriveCaller * > m_dc
 
- Protected Attributes inherited from DriveOwner
DriveCallerpDriveCaller
 

Detailed Description

template<>
class CompTplDriveCaller< Mat3x3 >

Definition at line 213 of file tpldrive_impl.cc.

Constructor & Destructor Documentation

Definition at line 218 of file tpldrive_impl.cc.

References MBDYN_EXCEPT_ARGS.

219  : m_dc(dc)
220  {
221  if (dc.size() != 9) {
223  }
224  };
#define MBDYN_EXCEPT_ARGS
Definition: except.h:63
std::vector< DriveCaller * > m_dc

Definition at line 226 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::m_dc.

226  {
227  for (unsigned i = 0; i < m_dc.size(); i++) {
228  delete m_dc[i];
229  }
230  };
std::vector< DriveCaller * > m_dc

Member Function Documentation

bool CompTplDriveCaller< Mat3x3 >::bIsDifferentiable ( void  ) const
inlinevirtual

Reimplemented from TplDriveCaller< Mat3x3 >.

Definition at line 288 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::bIsDifferentiable(), and CompTplDriveCaller< T >::m_dc.

288  {
289  for (unsigned i = 0; i < m_dc.size(); i++) {
290  if (!m_dc[i]->bIsDifferentiable()) {
291  return false;
292  }
293  }
294 
295  return true;
296  };
std::vector< DriveCaller * > m_dc
bool bIsDifferentiable(void) const

Here is the call graph for this function:

Mat3x3 CompTplDriveCaller< Mat3x3 >::Get ( const doublereal dVar) const
inlinevirtual

Implements TplDriveCaller< Mat3x3 >.

Definition at line 267 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::m_dc.

267  {
268  Mat3x3 t;
269 
270  for (unsigned i = 0; i < m_dc.size(); i++) {
271  t(i/3 + 1, i%3 + 1) = m_dc[i]->dGet(dVar);
272  }
273 
274  return t;
275  };
std::vector< DriveCaller * > m_dc
Mat3x3 CompTplDriveCaller< Mat3x3 >::Get ( void  ) const
inlinevirtual

Reimplemented from TplDriveCaller< Mat3x3 >.

Definition at line 277 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::m_dc.

277  {
278  Mat3x3 t;
279 
280  for (unsigned i = 0; i < m_dc.size(); i++) {
281  t(i/3 + 1, i%3 + 1) = m_dc[i]->dGet();
282  }
283 
284  return t;
285  };
std::vector< DriveCaller * > m_dc
int CompTplDriveCaller< Mat3x3 >::getNDrives ( void  ) const
inlinevirtual

Implements TplDriveCaller< Mat3x3 >.

Definition at line 308 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::m_dc.

308  {
309  return m_dc.size();
310  };
std::vector< DriveCaller * > m_dc
Mat3x3 CompTplDriveCaller< Mat3x3 >::GetP ( void  ) const
inlinevirtual

Reimplemented from TplDriveCaller< Mat3x3 >.

Definition at line 298 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::m_dc.

298  {
299  Mat3x3 t;
300 
301  for (unsigned i = 0; i < m_dc.size(); i++) {
302  t(i/3 + 1, i%3 + 1) = m_dc[i]->dGetP();
303  }
304 
305  return t;
306  };
std::vector< DriveCaller * > m_dc
virtual TplDriveCaller<Mat3x3>* CompTplDriveCaller< Mat3x3 >::pCopy ( void  ) const
inlinevirtual

Implements TplDriveCaller< Mat3x3 >.

Definition at line 233 of file tpldrive_impl.cc.

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

233  {
234  typedef CompTplDriveCaller<Mat3x3> dc;
235  TplDriveCaller<Mat3x3>* pDC = 0;
236 
237  std::vector<DriveCaller *> tmpdc(m_dc.size());
238 
239  for (unsigned i = 0; i < m_dc.size(); i++) {
240  tmpdc[i] = m_dc[i]->pCopy();
241  }
242 
243  SAFENEWWITHCONSTRUCTOR(pDC, dc, dc(tmpdc));
244 
245  return pDC;
246  };
std::vector< DriveCaller * > m_dc
#define SAFENEWWITHCONSTRUCTOR(pnt, item, constructor)
Definition: mynewmem.h:698
virtual std::ostream& CompTplDriveCaller< Mat3x3 >::Restart ( std::ostream &  out) const
inlinevirtual

Implements TplDriveCaller< Mat3x3 >.

Definition at line 249 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::m_dc.

249  {
250  out << "component";
251 
252  for (unsigned i = 0; i < m_dc.size(); i++) {
253  out << ", ", m_dc[i]->Restart(out);
254  }
255 
256  return out;
257  };
std::vector< DriveCaller * > m_dc
virtual std::ostream& CompTplDriveCaller< Mat3x3 >::Restart_int ( std::ostream &  out) const
inlinevirtual

Implements TplDriveCaller< Mat3x3 >.

Definition at line 259 of file tpldrive_impl.cc.

References CompTplDriveCaller< T >::m_dc.

259  {
260  for (unsigned i = 0; i < m_dc.size(); i++) {
261  out << ", ", m_dc[i]->Restart(out);
262  }
263 
264  return out;
265  };
std::vector< DriveCaller * > m_dc

Member Data Documentation

Definition at line 215 of file tpldrive_impl.cc.


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