24#ifndef _FLAT_BASE_TYPE_HH_
25#define _FLAT_BASE_TYPE_HH_
68 unsigned int offset(
unsigned int num)
const;
This class is the superclass of the types r_Structure_Type and r_Primitive_Type in the representation...
Definition basetype.hh:40
This class can be used to get a more convenient view on a structured base type.
Definition flatbasetype.hh:47
unsigned int get_num_types(void) const
return number of primitive types
unsigned int * offsets
the corresponding offsets
Definition flatbasetype.hh:104
r_Bytes typeSize
the total size of the entire type
Definition flatbasetype.hh:100
r_Flat_Base_Type & operator=(const r_Base_Type *type)
assignment of a base type
r_Primitive_Type ** primTypes
the primitive types
Definition flatbasetype.hh:102
const r_Primitive_Type * type(unsigned int num) const
return pointer to primitive type num index violation is thrown if higher index is requested than avai...
r_Flat_Base_Type & operator=(const r_Flat_Base_Type &src)
assignment of another flat type
const r_Primitive_Type * operator[](unsigned int num) const
operator returns pointer to primitive type num or NULL if invalid index violation is thrown if higher...
r_Flat_Base_Type(void)
default constructor, shouldn't be used
unsigned int numPrimTypes
the number of primitive types
Definition flatbasetype.hh:98
r_Flat_Base_Type(const r_Base_Type *type)
constructor receiving the (hierarchical) base type
void copy_flat_type(const r_Flat_Base_Type &type)
copy another flat type
r_Flat_Base_Type(const r_Flat_Base_Type &src)
copy constructor
unsigned int parse_structure_type(const r_Structure_Type *type, unsigned int number, unsigned int offset)
parse a structure type and return number of primitive types contained therein
void parse_primitive_type(r_Primitive_Type *type, unsigned int number, unsigned int offset)
parse a primitive type
void free_type_data(void)
free type-specific data (destructor, assignment)
r_Bytes size(void) const
return size of entire type
unsigned int offset(unsigned int num) const
return offset of primitive type num index violation is thrown if higher index is requested than avail...
void print_status(std::ostream &str) const
print status to a stream
void init_shared(void)
shared init code
~r_Flat_Base_Type(void)
destructor
void process_type(const r_Base_Type *type)
process a base type
bool operator==(const r_Flat_Base_Type &src) const
equality
This class represents all primitive types in the ODMG conformant representation of the RasDaMan type ...
Definition primitivetype.hh:42
This class represents all user defined structured types in the ODMG conformant representation of the ...
Definition structuretype.hh:41
std::ostream & operator<<(std::ostream &str, const r_Flat_Base_Type &type)
size_t r_Bytes
number of bytes in an tile or mdd or type.
Definition mddtypes.hh:43