5#ifndef TPINTEGERVECTOR_H
6#define TPINTEGERVECTOR_H
37 void resize(
size_t new_size );
38 void reserve(
size_t new_size );
101 std::vector< TPIntegerVector_p1::value_type >
m_data;
116 throw std::runtime_error(
"TPIntegerVector_p1::resize() only supported on the last element");
117 size_t change = new_size -
size();
125 throw std::runtime_error(
"TPIntegerVector_p1::reserve() only supported on the last element");
126 size_t change = new_size -
size();
152 union {
unsigned int i;
int f;} m_union;
154 m_storage->m_data.push_back( m_union.i );
160 union {
unsigned int i;
float f;} m_union;
162 m_storage->m_data.push_back( m_union.i );
169 union {
struct{
unsigned int i1;
unsigned int i2;} c;
double d;} m_union;
171 m_storage->m_data.push_back( m_union.c.i1 );
172 m_storage->m_data.push_back( m_union.c.i2 );
178 union {
struct{
unsigned short i1;
unsigned short i2;} c;
unsigned int I;} m_union;
179 m_union.c.i1 = val.typeID();
180 m_union.c.i2 = val.topLevelCnvID();
181 m_storage->m_data.push_back( m_union.I );
182 m_storage->m_data.push_back( val.index());
188 m_storage->m_data.push_back( val.size());
190 union {
struct{
unsigned short i1;
unsigned short i2;} c;
unsigned int I;} m_union;
191 std::vector<TPObjRef>::const_iterator it=val.begin();
192 for (;it!=val.end();it++){
194 m_union.c.i1 = v.typeID();
195 m_union.c.i2 = v.topLevelCnvID();
196 m_storage->m_data.push_back( m_union.I );
204 union {
int f;
unsigned int i;} m_union;
205 m_union.i = (*i); i++;
211 union {
float f;
unsigned int i;} m_union;
212 m_union.i = (*i); i++;
218 union {
double d;
struct{
unsigned int i1;
unsigned int i2;}c; } m_union;
219 m_union.c.i1 = (*i); i++;
220 m_union.c.i2 = (*i); i++;
226 union {
struct{
unsigned short i1;
unsigned short i2;} c;
unsigned int I;} m_union;
227 m_union.I = (*i); i++;
234 int size = (*i); i++;
235 union {
struct{
unsigned short i1;
unsigned short i2;} c;
unsigned int I;} m_union;
236 std::vector<TPObjRef>
res;
238 for(
int it=0;it<
size;it++){
239 m_union.I = (*i); i++;
std::pair< std::vector< unsigned int >, bool > res
std::vector< TPIntegerVector_p1::value_type > m_data
friend class TPIntegerVector_p1
std::vector< position_type > m_endPos
TPIntegerVector_p1 back()
TPIntegerVectorStorage_p1()
unsigned short position_type
TPIntegerVector_p1 operator[](int idx)
const_iterator end() const
value_type front_UI(const_iterator i) const
void push_float(const float &val)
value_type & operator[](size_t idx)
void resize(size_t new_size)
void push_vTPObjRef(const std::vector< TPObjRef > &val)
std::vector< TPObjRef > front_vTPObjRef(const_iterator &i) const
void push_TPObjRef(const TPObjRef &val)
TPIntegerVector_p1(TPIntegerVectorStorage_p1 *storage, int idx)
TPIntegerVectorStorage_p1 * m_storage
TPObjRef front_TPObjRef(const_iterator &i) const
void reserve(size_t new_size)
double front_double(const_iterator &i) const
const_iterator begin() const
const value_type * const_iterator
void push_back(const value_type &val)
int front_int(const_iterator &i) const
float front_float(const_iterator &i) const
void push_double(const double val)
void push_int(const int &val)
This class is an object reference used in Athena persistent data model.
This structure holds an ID of a persistent type.