rasdaman client API  10.6.3
The Array Analytics Engine: Datacubes at Your Fingertips
Public Member Functions | Protected Attributes | List of all members
r_Structure_Type Class Reference

This class represents all user defined structured types in the ODMG conformant representation of the RasDaMan type system. More...

#include <structuretype.hh>

Inheritance diagram for r_Structure_Type:
r_Base_Type r_Type r_Meta_Object

Public Member Functions

 r_Structure_Type ()=default
 default constructor. More...
 
 r_Structure_Type (const char *newTypeName, unsigned int newNumAttrs, r_Attribute *newAttrs, int offset=0)
 constructor getting name of type and type id. More...
 
 r_Structure_Type (const r_Structure_Type &oldObj)
 copy constructor More...
 
const r_Structure_Typeoperator= (const r_Structure_Type &oldObj)
 assignment operator. More...
 
 ~r_Structure_Type () override=default
 destructor. More...
 
r_Typeclone () const override
 clone operation More...
 
r_Type::r_Type_Id type_id () const override
 retrieve id of the type. More...
 
bool isStructType () const override
 check, if type is primitive or structured. More...
 
virtual bool compatibleWith (const r_Structure_Type *myType) const
 check, if this type is compatible with myType (e.g. check the structure ignoring then names of atributtes) More...
 
r_Attributeresolve_attribute (const char *name)
 return attribute specified by name. More...
 
r_Attributeresolve_attribute (unsigned int number)
 return attribute specified by number starting with zero. More...
 
r_Attributeoperator[] (unsigned int number)
 subscript operator to access attributes by index More...
 
const r_Attributeresolve_attribute (const char *name) const
 return attribute specified by name. More...
 
const r_Attributeresolve_attribute (unsigned int number) const
 return attribute specified by number starting with zero. More...
 
const r_Attributeoperator[] (unsigned int number) const
 subscript operator to access attributes by index More...
 
const std::vector< r_Attribute > & getAttributes () const
 
unsigned int count_elements () const
 get number of attributes More...
 
void convertToLittleEndian (char *cells, r_Area noCells) const override
 converts array of cells from NT byte order to Unix byte order. More...
 
void convertToBigEndian (char *cells, r_Area noCells) const override
 converts array of cells from Unix byte order to NT byte order. More...
 
void print_status (std::ostream &s) const override
 writes state of object to specified stream More...
 
void print_value (const char *storage, std::ostream &s) const override
 prints values of a structured type More...
 
- Public Member Functions inherited from r_Base_Type
 r_Base_Type ()=default
 default constructor. More...
 
 r_Base_Type (const char *newTypeName, r_Bytes newSize)
 constructor getting name of basetype. More...
 
 r_Base_Type (const r_Base_Type &)
 copy constructor More...
 
const r_Base_Typeoperator= (const r_Base_Type &oldObj)
 assignment operator. More...
 
virtual ~r_Base_Type ()=default
 destructor. More...
 
virtual bool isBaseType () const
 check, if type is a base type (primitive type or structure type). More...
 
r_Bytes size () const
 retrieve size of the type. More...
 
- Public Member Functions inherited from r_Type
 r_Type ()=default
 default constructor. More...
 
 r_Type (const char *newTypeName)
 constructor getting name of type. More...
 
virtual ~r_Type ()=default
 destructor. More...
 
virtual bool isComplexType () const
 check, if type is a base type ( primitive type or structure type). More...
 
virtual bool isMarrayType () const
 check, if type is a marray type. More...
 
virtual bool isPrimitiveType () const
 check, if type is a primitive type. More...
 
virtual bool isSintervalType () const
 check, if type is a Sinterval More...
 
virtual bool isMintervalType () const
 check, if type is a Minterval More...
 
virtual bool isCollectionType () const
 check, if type is a Colelction type More...
 
virtual bool isPointType () const
 check, if type is a Point More...
 
virtual bool isOidType () const
 check, if type is a oid More...
 
virtual bool isStringType () const
 check, if type is a string More...
 
- Public Member Functions inherited from r_Meta_Object
 r_Meta_Object ()=default
 default constructor. More...
 
 r_Meta_Object (const char *newTypeName)
 constructor getting name of type. More...
 
virtual ~r_Meta_Object ()=default
 destructor. More...
 
const char * name () const
 retrieve name of the type. More...
 

Protected Attributes

std::vector< r_AttributemyAttributes
 
- Protected Attributes inherited from r_Base_Type
r_Bytes typeSize {}
 storing size of type in bytes More...
 
- Protected Attributes inherited from r_Meta_Object
std::string typeName
 

Additional Inherited Members

- Public Types inherited from r_Type
enum  r_Type_Id {
  ULONG, USHORT, BOOL, LONG,
  SHORT, OCTET, DOUBLE, FLOAT,
  CHAR, COMPLEXTYPE1, COMPLEXTYPE2, CINT16,
  CINT32, STRUCTURETYPE, MARRAYTYPE, COLLECTIONTYPE,
  SINTERVALTYPE, MINTERVALTYPE, POINTTYPE, OIDTYPE,
  STRINGTYPE, UNKNOWNTYPE
}
 typedef for the enum specifying a primitive type, structure type, marray type, interval type, minterval type, point type or oid type More...
 
- Static Public Member Functions inherited from r_Type
static r_Typeget_any_type (const char *type_string)
 build type schema from string representation More...
 
static r_Typeget_any_type (const std::string &type_string)
 

Detailed Description

This class represents all user defined structured types in the ODMG conformant representation of the RasDaMan type system.

Constructor & Destructor Documentation

◆ r_Structure_Type() [1/3]

r_Structure_Type::r_Structure_Type ( )
default

default constructor.

◆ r_Structure_Type() [2/3]

r_Structure_Type::r_Structure_Type ( const char *  newTypeName,
unsigned int  newNumAttrs,
r_Attribute newAttrs,
int  offset = 0 
)

constructor getting name of type and type id.

◆ r_Structure_Type() [3/3]

r_Structure_Type::r_Structure_Type ( const r_Structure_Type oldObj)

copy constructor

◆ ~r_Structure_Type()

r_Structure_Type::~r_Structure_Type ( )
overridedefault

destructor.

Member Function Documentation

◆ clone()

r_Type* r_Structure_Type::clone ( ) const
overridevirtual

clone operation

Implements r_Type.

◆ compatibleWith()

virtual bool r_Structure_Type::compatibleWith ( const r_Structure_Type myType) const
virtual

check, if this type is compatible with myType (e.g. check the structure ignoring then names of atributtes)

◆ convertToBigEndian()

void r_Structure_Type::convertToBigEndian ( char *  cells,
r_Area  noCells 
) const
overridevirtual

converts array of cells from Unix byte order to NT byte order.

Implements r_Type.

◆ convertToLittleEndian()

void r_Structure_Type::convertToLittleEndian ( char *  cells,
r_Area  noCells 
) const
overridevirtual

converts array of cells from NT byte order to Unix byte order.

Implements r_Type.

◆ count_elements()

unsigned int r_Structure_Type::count_elements ( ) const

get number of attributes

◆ getAttributes()

const std::vector<r_Attribute>& r_Structure_Type::getAttributes ( ) const

◆ isStructType()

bool r_Structure_Type::isStructType ( ) const
overridevirtual

check, if type is primitive or structured.

Reimplemented from r_Type.

◆ operator=()

const r_Structure_Type& r_Structure_Type::operator= ( const r_Structure_Type oldObj)

assignment operator.

◆ operator[]() [1/2]

r_Attribute& r_Structure_Type::operator[] ( unsigned int  number)

subscript operator to access attributes by index

◆ operator[]() [2/2]

const r_Attribute& r_Structure_Type::operator[] ( unsigned int  number) const

subscript operator to access attributes by index

◆ print_status()

void r_Structure_Type::print_status ( std::ostream &  s) const
overridevirtual

writes state of object to specified stream

Implements r_Meta_Object.

◆ print_value()

void r_Structure_Type::print_value ( const char *  storage,
std::ostream &  s 
) const
overridevirtual

prints values of a structured type

Implements r_Base_Type.

◆ resolve_attribute() [1/4]

r_Attribute& r_Structure_Type::resolve_attribute ( const char *  name)

return attribute specified by name.

◆ resolve_attribute() [2/4]

const r_Attribute& r_Structure_Type::resolve_attribute ( const char *  name) const

return attribute specified by name.

◆ resolve_attribute() [3/4]

r_Attribute& r_Structure_Type::resolve_attribute ( unsigned int  number)

return attribute specified by number starting with zero.

◆ resolve_attribute() [4/4]

const r_Attribute& r_Structure_Type::resolve_attribute ( unsigned int  number) const

return attribute specified by number starting with zero.

◆ type_id()

r_Type::r_Type_Id r_Structure_Type::type_id ( ) const
overridevirtual

retrieve id of the type.

Implements r_Type.

Member Data Documentation

◆ myAttributes

std::vector<r_Attribute> r_Structure_Type::myAttributes
protected

The documentation for this class was generated from the following file: