DataColumn.cxx
Go to the documentation of this file.
1 
12 #include "DataColumn.h"
13 
14 using std::vector;
15 
16 using namespace hippodraw;
17 
20 {
21 }
22 
25 {
26 }
27 
28 std::vector < double > &
31 {
32  return m_double_data;
33 }
34 
35 const std::vector < double > &
37 getData () const
38 {
39  return m_double_data;
40 }
41 
42 unsigned int
44 getRank () const
45 {
46  unsigned int size = m_shape.size();
47 
48  return size;
49 }
50 
51 const std::vector < intptr_t > &
54 {
55  return m_shape;
56 }
57 
58 void
60 setShape ( const std::vector < intptr_t > & shape )
61 {
62  m_shape = shape;
63 }
64 
65 std::size_t
67 size ( ) const
68 {
69  unsigned int rank = m_shape.size ();
70  std::size_t product = 1;
71  for ( unsigned int i = 0; i < rank; i++ ) {
72  product *= m_shape[i];
73  }
74 
75  return product;
76 }
77 
78 void
81 {
82  m_double_data.clear ();
83 }
84 
85 double *
87 doubleArrayAt ( unsigned int row )
88 {
89  unsigned int rank = m_shape.size ();
90  unsigned int size = 1;
91  for ( unsigned int i = 1; i < rank; i++ ) {
92  size *= m_shape [ i ];
93  }
94  unsigned int pos = row * size;
95 
96  return & m_double_data [ pos ];
97 }

Generated for HippoDraw Class Library by doxygen