Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

BurgersVector.h

Go to the documentation of this file.
00001 /*
00002  * File:        BurgersVector.h
00003  * Copyright:   (c) 2005-2007 Princeton University
00004  * Author(s):   Kevin T. Chu
00005  * Revision:    $Revision: 379 $
00006  * Modified:    $Date: 2007-08-07 10:02:34 -0400 (Tue, 07 Aug 2007) $
00007  * Description: Header file for the BurgersVector class
00008  */
00009 
00010 #ifndef included_BurgersVector_h
00011 #define included_BurgersVector_h
00012 
00013 
00030 // LSMDD Headers
00031 #include "LSMDD_config.h"
00032 
00033 namespace LSMDD {
00034 
00035 class BurgersVector
00036 {
00037 public:
00038 
00043   BurgersVector() {
00044     d_burgers_vector[0] = 0.0;
00045     d_burgers_vector[1] = 0.0;
00046     d_burgers_vector[2] = 0.0;
00047   }
00048 
00057   BurgersVector(const BurgersVector& rhs) {
00058     d_burgers_vector[0] = rhs.d_burgers_vector[0];
00059     d_burgers_vector[1] = rhs.d_burgers_vector[1];
00060     d_burgers_vector[2] = rhs.d_burgers_vector[2];
00061   }
00062 
00066   virtual ~BurgersVector() {}
00067 
00078   virtual inline const BurgersVector& operator=( const BurgersVector& rhs ) {
00079 
00080     // check for assignment to self
00081     if (this == &rhs) return *this;
00082 
00083     d_burgers_vector[0] = rhs.d_burgers_vector[0];
00084     d_burgers_vector[1] = rhs.d_burgers_vector[1];
00085     d_burgers_vector[2] = rhs.d_burgers_vector[2];
00086     return *this;
00087   }
00088 
00101   virtual inline double& operator[]( const int i ) {
00102     return d_burgers_vector[i];
00103   }
00104 
00117   virtual inline const double& operator[]( const int i ) const {
00118     return d_burgers_vector[i];
00119   }
00120 
00130   virtual inline const double* getPointer() const {
00131     return d_burgers_vector;
00132   }
00133 
00134 
00135 protected:
00136 
00137   /***********************************************************
00138    *
00139    * Data Members
00140    *
00141    ***********************************************************/
00142   double d_burgers_vector[3];
00143 
00144 };
00145 
00146 } // end LSMDD namespace
00147 
00148 #endif
00149 

Generated on Tue Aug 7 15:43:41 2007 for LSMDD by doxygen 1.3.4