RVC::DBASE_ELEMENT Class Reference

Interface for RVC database objects that support attachment of records to geospatial object "elements". More...

#include <rvc/dbelem.h>

Inheritance diagram for RVC::DBASE_ELEMENT:

Inheritance graph
[legend]
List of all members.

Public Types

typedef SIMPLE_ARRAY< ATTACHMENTITEMATTACHMENTARRAY
typedef SIMPLE_ARRAY< DBLISTELMTDBLIST

Public Member Functions

ERRVALUE AddAttachment (const RVC::ELEMENT &elem, const RVC::DBASE_ELEMENT::ATTACHMENTITEM &item)
ERRVALUE AddAttachments (const RVC::ELEMENT &elem, const RVC::DBASE_ELEMENT::ATTACHMENTARRAY &items)
INT32 AppendDBList (INT32 ElemNum, const DBLISTELMT &item)
INT32 AppendDBList (INT32 ElemNum, const DBLIST &DBList)
ERRVALUE CleanDBList ()
bool CompareElementRecords (INT32 LhsElemNum, const DBASE_ELEMENT &rhs, INT32 RhsElemNum, const SIMPLE_ARRAY< INT32 > &TableMatch) const
ERRVALUE ConvertStyleAssignTableTo (DBASE_ELEMENT &DestDBaseObj)
 DBASE_ELEMENT (const RVC::DBASE_ELEMENT &rhs)
 DBASE_ELEMENT (ELEMTYPE ElemType)
int GetAttachedElements (const RVC::DBTABLE::RECORD &record, SIMPLE_ARRAY< RVC::ELEMENT > &ElementList, ELEMTYPE ElemType=ELEMTYPE_Empty) const
int GetAttachedElements (const RVC::DBTABLE::RECORD &record, SIMPLE_ARRAY< INT32 > &ElementList, ELEMTYPE ElemType=ELEMTYPE_Empty) const
ERRVALUE GetAttachedRecordList (INT32 ElemNum, DBLIST &DBList, FINDFLAG FindFlag=FINDFLAG_AllAttached, INT32 BaseTableNum=-1) const
INT32 GetAttachedRecordNumbers (const RVC::ELEMENT &element, const RVC::DBTABLE &table, SIMPLE_ARRAY< INT32 > &recordnums, FINDFLAG findflags=FINDFLAG_AllAttached) const
INT32 GetAttachments (const RVC::ELEMENT &elem, RVC::DBASE_ELEMENT::ATTACHMENTARRAY &items) const
INT32 GetDBListItemSize (INT32 ItemNum, bool ExcludeInternal=false) const
INT32 GetDBListMaxItemSize () const
INT32 GetDBListNumElements () const
ELEMTYPE GetElemType () const
bool HasAttachedElements (const RVC::DBTABLE::RECORD &record, ELEMTYPE ElemType=ELEMTYPE_All) const
ERRVALUE OpenAsSubobject (const RVC::GEOSPATIAL &parent, OPENMODE mode=OPENMODE_Read, MDLGPARENT widget=0)
ERRVALUE OpenAsSubobject (const RVC::OBJITEM &ParentObjItem, OPENMODE mode=OPENMODE_Read, MDLGPARENT widget=0)
RVC::DBASE_ELEMENToperator= (const RVC::DBASE_ELEMENT &rhs)
INT32 ReadDBList (INT32 ElemNum, DBLIST &DBList) const
ERRVALUE RemoveAttachment (const RVC::ELEMENT &elem, const RVC::DBASE_ELEMENT::ATTACHMENTITEM &item)
ERRVALUE RemoveAttachments (const RVC::ELEMENT &elem, const RVC::DBASE_ELEMENT::ATTACHMENTARRAY &items)
ERRVALUE ResizeDBList (INT32 NumItems)
ERRVALUE ResizeDBListItem (INT32 ElemNum, INT32 NumItems)
ERRVALUE SwapDBList (INT32 Item1, INT32 Item2)
INT32 UnattachDBList (INT32 ElemNum, const DBLIST &DBList)
ERRVALUE UpdateDBListNumElements (INT32 NumElements)
INT32 WriteDBList (INT32 ElemNum, const DBLIST &DBList)
virtual ~DBASE_ELEMENT ()

Detailed Description

Interface for RVC database objects that support attachment of records to geospatial object "elements".

This includes methods to read, write, append, and modify element-record attachment lists.

RVC Object Types that this class supports: Derived class

Default RVC Object Type for this class: Derived class

Valid parents for this class: Derived class

Definition at line 136 of file dbelem.h.


Member Typedef Documentation

typedef SIMPLE_ARRAY<ATTACHMENTITEM> RVC::DBASE_ELEMENT::ATTACHMENTARRAY
 

Definition at line 140 of file dbelem.h.

typedef SIMPLE_ARRAY<DBLISTELMT> RVC::DBASE_ELEMENT::DBLIST
 

Definition at line 142 of file dbelem.h.


Constructor & Destructor Documentation

RVC::DBASE_ELEMENT::DBASE_ELEMENT ELEMTYPE  ElemType  )  [explicit]
 

Default constructor.

RVC::DBASE_ELEMENT::DBASE_ELEMENT const RVC::DBASE_ELEMENT rhs  ) 
 

Copy constructor.

virtual RVC::DBASE_ELEMENT::~DBASE_ELEMENT  )  [virtual]
 

Destructor.


Member Function Documentation

ERRVALUE RVC::DBASE_ELEMENT::AddAttachment const RVC::ELEMENT elem,
const RVC::DBASE_ELEMENT::ATTACHMENTITEM item
 

Attach the record to the element.

ERRVALUE RVC::DBASE_ELEMENT::AddAttachments const RVC::ELEMENT elem,
const RVC::DBASE_ELEMENT::ATTACHMENTARRAY items
 

Attach the array of records to the element.

INT32 RVC::DBASE_ELEMENT::AppendDBList INT32  ElemNum,
const DBLISTELMT item
 

Append one list entry to this element.

This method will remove duplicates.

INT32 RVC::DBASE_ELEMENT::AppendDBList INT32  ElemNum,
const DBLIST DBList
 

Append list entries to this element.

This method will remove duplicates.

ERRVALUE RVC::DBASE_ELEMENT::CleanDBList  ) 
 

Remove invalid entries from the element database attachment list.

bool RVC::DBASE_ELEMENT::CompareElementRecords INT32  LhsElemNum,
const DBASE_ELEMENT rhs,
INT32  RhsElemNum,
const SIMPLE_ARRAY< INT32 > &  TableMatch
const
 

Compare attached element records from two databases to determine if the element attachmets are to the same records.

Returns:
'True' if they are, false if not.
Parameters:
LhsElemNum  Left side element number
rhs  Other database to compare to
RhsElemNum  Right side element number
TableMatch  Table translation array from Lhs database to Rhs database, See DBASE::FindTableMatches()

ERRVALUE RVC::DBASE_ELEMENT::ConvertStyleAssignTableTo DBASE_ELEMENT DestDBaseObj  ) 
 

Convert style assignment table from 'this' to 'DestDBaseObj' based on the database object types.

Parameters:
DestDBaseObj  Must be created outside this function and be open

int RVC::DBASE_ELEMENT::GetAttachedElements const RVC::DBTABLE::RECORD record,
SIMPLE_ARRAY< RVC::ELEMENT > &  ElementList,
ELEMTYPE  ElemType = ELEMTYPE_Empty
const
 

Get the list of attached elements to a specific record.

Parameters:
record  Record to find attached elements of
ElemType  Defaults to DBASE_ELEMENT ElemType

int RVC::DBASE_ELEMENT::GetAttachedElements const RVC::DBTABLE::RECORD record,
SIMPLE_ARRAY< INT32 > &  ElementList,
ELEMTYPE  ElemType = ELEMTYPE_Empty
const
 

Get the list of attached elements to a specific record.

Parameters:
record  Record to find attached elements of
ElemType  Defaults to DBASE_ELEMENT ElemType

ERRVALUE RVC::DBASE_ELEMENT::GetAttachedRecordList INT32  ElemNum,
DBLIST DBList,
FINDFLAG  FindFlag = FINDFLAG_AllAttached,
INT32  BaseTableNum = -1
const
 

Get records attached to the specified element for all tables.

Parameters:
DBList  List of attachments allocated and returned

INT32 RVC::DBASE_ELEMENT::GetAttachedRecordNumbers const RVC::ELEMENT element,
const RVC::DBTABLE table,
SIMPLE_ARRAY< INT32 > &  recordnums,
FINDFLAG  findflags = FINDFLAG_AllAttached
const
 

Get the record numbers attached to the element for this table.

Returns:
Number of records attached or <0 if error
Parameters:
element  Element
table  Table to get attached records for
recordnums  Array of record numbers returned

INT32 RVC::DBASE_ELEMENT::GetAttachments const RVC::ELEMENT elem,
RVC::DBASE_ELEMENT::ATTACHMENTARRAY items
const
 

Get array of attachments to this element.

INT32 RVC::DBASE_ELEMENT::GetDBListItemSize INT32  ItemNum,
bool  ExcludeInternal = false
const
 

Get the size of an individual entries for an element database attachment list.

Returns:
Number of items for an individual DBList entry

INT32 RVC::DBASE_ELEMENT::GetDBListMaxItemSize  )  const
 

Get the maximum number of entries for an element database attachment list.

Returns:
Maximum number of DBList entries

INT32 RVC::DBASE_ELEMENT::GetDBListNumElements  )  const
 

Get the number of element database attachment list entries.

Returns:
Number of DBList entries

ELEMTYPE RVC::DBASE_ELEMENT::GetElemType  )  const [inline]
 

Get element type database is associated with.

Definition at line 263 of file dbelem.h.

bool RVC::DBASE_ELEMENT::HasAttachedElements const RVC::DBTABLE::RECORD record,
ELEMTYPE  ElemType = ELEMTYPE_All
const
 

Determine if the given record has any elements attached.

Returns:
'True' if elements are attached, 'false' if not

ERRVALUE RVC::DBASE_ELEMENT::OpenAsSubobject const RVC::GEOSPATIAL parent,
OPENMODE  mode = OPENMODE_Read,
MDLGPARENT  widget = 0
 

Open the database. If a database object does not exist, make one.

Parameters:
parent  Parent object to find and/or create database under
widget  Parent dialog handle, 0 for default handle

ERRVALUE RVC::DBASE_ELEMENT::OpenAsSubobject const RVC::OBJITEM ParentObjItem,
OPENMODE  mode = OPENMODE_Read,
MDLGPARENT  widget = 0
 

Open the database. If a database object does not exist, make one.

Parameters:
ParentObjItem  Parent object to find and/or create database under
widget  Parent dialog handle, 0 for default handle

RVC::DBASE_ELEMENT& RVC::DBASE_ELEMENT::operator= const RVC::DBASE_ELEMENT rhs  ) 
 

Assignment.

INT32 RVC::DBASE_ELEMENT::ReadDBList INT32  ElemNum,
DBLIST DBList
const
 

Read an individual entry from the element database attachment list.

Returns:
Number of entries read

ERRVALUE RVC::DBASE_ELEMENT::RemoveAttachment const RVC::ELEMENT elem,
const RVC::DBASE_ELEMENT::ATTACHMENTITEM item
 

Remove the record attachment to the element.

ERRVALUE RVC::DBASE_ELEMENT::RemoveAttachments const RVC::ELEMENT elem,
const RVC::DBASE_ELEMENT::ATTACHMENTARRAY items
 

Remove the array of record attachments to the element.

ERRVALUE RVC::DBASE_ELEMENT::ResizeDBList INT32  NumItems  ) 
 

Resize the number of entries in the element database attachment list.

ERRVALUE RVC::DBASE_ELEMENT::ResizeDBListItem INT32  ElemNum,
INT32  NumItems
 

Resize an individual entry from the element database attachment list.

ERRVALUE RVC::DBASE_ELEMENT::SwapDBList INT32  Item1,
INT32  Item2
 

Swap individual entries from the element database attachment list.

INT32 RVC::DBASE_ELEMENT::UnattachDBList INT32  ElemNum,
const DBLIST DBList
 

Unattach items from an individual entry from the element database attachment list.

Returns:
Number of entries unattached

ERRVALUE RVC::DBASE_ELEMENT::UpdateDBListNumElements INT32  NumElements  ) 
 

Inform the database code that the number of elements has changed May not be needed.

INT32 RVC::DBASE_ELEMENT::WriteDBList INT32  ElemNum,
const DBLIST DBList
 

Write an individual entry from the element database attachment list.

Returns:
Number of entries written


The documentation for this class was generated from the following file:
Generated on Tue Dec 14 13:21:14 2004 for TNTsdk by  doxygen 1.3.8-20040913