DataColumn.cxx

Go to the documentation of this file.
00001 
00012 #include "DataColumn.h"
00013 
00014 using std::vector;
00015 
00016 using namespace hippodraw;
00017 
00018 DataColumn::
00019 DataColumn ()
00020 {
00021 }
00022 
00023 DataColumn::
00024 ~DataColumn()
00025 {
00026 }
00027 
00028 std::vector < double > &
00029 DataColumn::
00030 getData ()
00031 {
00032   return m_double_data;
00033 }
00034 
00035 const std::vector < double > &
00036 DataColumn::
00037 getData () const
00038 {
00039   return m_double_data;
00040 }
00041 
00042 unsigned int 
00043 DataColumn::
00044 getRank () const
00045 {
00046   unsigned int size = m_shape.size();
00047 
00048   return size;
00049 }
00050 
00051 const std::vector < intptr_t > &
00052 DataColumn::
00053 getShape ()
00054 {
00055   return m_shape;
00056 }
00057 
00058 void
00059 DataColumn::
00060 setShape ( const std::vector < intptr_t > & shape )
00061 {
00062   m_shape = shape;
00063 }
00064 
00065 std::size_t
00066 DataColumn::
00067 size ( ) const
00068 {
00069   unsigned int rank = m_shape.size ();
00070   std::size_t product = 1;
00071   for ( unsigned int i = 0; i < rank; i++ ) {
00072     product *= m_shape[i];
00073   }
00074 
00075   return product;
00076 }
00077 
00078 void
00079 DataColumn::
00080 clear ()
00081 {
00082   m_double_data.clear ();
00083 }
00084 
00085 double *
00086 DataColumn::
00087 doubleArrayAt ( unsigned int row )
00088 {
00089   unsigned int rank = m_shape.size ();
00090   unsigned int size = 1;
00091   for ( unsigned int i = 1; i < rank; i++ ) {
00092     size *= m_shape [ i ];
00093   }
00094   unsigned int pos = row * size;
00095 
00096   return & m_double_data [ pos ];
00097 }

Generated for HippoDraw Class Library by doxygen