41 #ifndef CORE_CONAINTERS_ARRAY2_H
42 #define CORE_CONAINTERS_ARRAY2_H 1
44 #include <boost/multi_array.hpp>
64 void resize(
size_t size1,
size_t size2)
66 typename impl_type::extent_gen extents;
67 impl_.resize(extents[size1][size2]);
77 return impl_.origin()[idx];
82 return impl_.origin()[idx];
97 inline size_t dim1()
const {
return impl_.shape()[0];}
101 inline size_t dim2()
const {
return impl_.shape()[1];}
108 template<
class T>
void Pio(Piostream& stream, Array2<T>&
data);
109 template<
class T>
void Pio(Piostream& stream, Array2<T>*&
data);
111 #define ARRAY2_VERSION 2
125 data.
resize(static_cast<size_type>(d1), static_cast<size_type>(d2));
132 data.
resize(static_cast<size_type>(d1), static_cast<size_type>(d2));
137 long long d1 =
static_cast<long long>(data.
dim1());
138 long long d2 =
static_cast<long long>(data.
dim2());
virtual bool block_io(void *, size_t, size_t)
Definition: Persistent.h:174
bool reading() const
Definition: Persistent.h:164
const T & operator[](size_t idx) const
Definition: Array2.h:80
#define ARRAY2_VERSION
Definition: Array2.h:111
virtual bool supports_block_io()
Definition: Persistent.h:171
Definition: Persistent.h:89
Array2()
Definition: Array2.h:57
virtual int begin_class(const std::string &name, int current_version)
Definition: Persistent.cc:143
size_t dim1() const
Returns number of rows.
Definition: Array2.h:97
Base class for persistent objects...
dictionary data
Definition: eabLatVolData.py:11
size_t size() const
Definition: Array2.h:70
const T & operator()(index_type d1, index_type d2) const
Definition: Array2.h:85
void Pio(Piostream &stream, Array1< T > &array)
Definition: Array1.h:65
boost::multi_array< T, 2 > impl_type
Definition: Array2.h:54
virtual void end_class()
Definition: Persistent.cc:178
long long index_type
Definition: Types.h:39
void resize(size_t size1, size_t size2)
Definition: Array2.h:64
impl_type & getImpl()
Definition: Array2.h:103
T value_type
Definition: Array2.h:55
T & operator[](size_t idx)
Definition: Array2.h:75
size_t dim2() const
Returns number of cols.
Definition: Array2.h:101
T & operator()(index_type d1, index_type d2)
Definition: Array2.h:90
Array2(size_t size1, size_t size2)
Definition: Array2.h:59