/*********************************************************************
** Copyright (c) 1992-2025 MAK Technologies, Inc
** All rights reserved.
*********************************************************************/


#ifdef vlDcm_inl

// Inline functions

inline DtVector& DtDcm::operator[](int i) 
{ 
   return rep[i];
}

inline const DtVector& DtDcm::operator[](int i) const 
{ 
   return rep[i];
}

inline DtDcm::DtDcm() 
{ 
}

inline DtDcm::DtDcm(double a, double b, double c, 
	     double d, double e, double f, 
	     double g, double h, double i) 
{ 
   rep[0][0] = a; rep[0][1] = b; rep[0][2] = c;
   rep[1][0] = d; rep[1][1] = e; rep[1][2] = f;
   rep[2][0] = g; rep[2][1] = h; rep[2][2] = i;
}

inline DtDcm::DtDcm(const DtVector& a, const DtVector& b, const DtVector& c)
{
   rep[0] = a; rep[1] = b; rep[2] = c;
}	 

inline DtDcm::DtDcm(const DtDcm &other)
{
   rep[0] = other[0]; 
   rep[1] = other[1]; 
   rep[2] = other[2];
}

inline DtDcm& DtDcm::operator=(const DtDcm &other)
{
   if (&other != this)
   {
      rep[0] = other[0]; 
      rep[1] = other[1]; 
      rep[2] = other[2];
   }
   return *this;
}

inline int DtDcm::operator==(const DtDcm& other) const
{
   return
      (
      rep[0] == other[0] &&
      rep[1] == other[1] &&
      rep[2] == other[2]
   );
}

inline int DtDcm::operator!=(const DtDcm& other) const
{
   return
      (
      rep[0] != other[0] ||
      rep[1] != other[1] ||
      rep[2] != other[2]
   );
}

inline DtDcm::operator DtVector* ()
{
   return rep;
}

inline DtDcm::operator const DtVector* () const
{
   return rep;
}

#endif







