NullTable.h
Classes
- NullTable -- Class indicating a null Table object (full description)
Interface
- Public Members
- NullTable()
- virtual ~NullTable()
- virtual Bool isNull() const
- virtual void reopenRW()
- virtual Bool asBigEndian() const
- virtual Bool isMultiUsed (Bool checkSubTable) const
- virtual const TableLock& lockOptions() const
- virtual void mergeLock (const TableLock& lockOptions)
- virtual Bool hasLock (FileLocker::LockType) const
- virtual Bool lock (FileLocker::LockType, uInt nattempts)
- virtual void unlock()
- virtual void flush (Bool fsync, Bool recursive)
- virtual void resync()
- virtual uInt getModifyCounter() const
- virtual Bool isWritable() const
- virtual void deepCopy (const String& newName, const Record& dataManagerInfo, int tableOption, Bool valueCopy, int endianFormat, Bool noRows) const
- virtual TableDesc actualTableDesc() const
- virtual Record dataManagerInfo() const
- virtual TableRecord& keywordSet()
- virtual TableRecord& rwKeywordSet()
- virtual BaseColumn* getColumn (uInt columnIndex) const
- virtual BaseColumn* getColumn (const String& columnName) const
- virtual Bool canAddRow() const
- virtual void addRow (uInt nrrow, Bool initialize)
- virtual Bool canRemoveRow() const
- virtual void removeRow (uInt rownr)
- virtual DataManager* findDataManager (const String& dataManagerName) const
- virtual void addColumn (const ColumnDesc& columnDesc)
- virtual void addColumn (const ColumnDesc& columnDesc, const String& dataManager, Bool byName)
- virtual void addColumn (const ColumnDesc& columnDesc, const DataManager& dataManager)
- virtual void addColumn (const TableDesc& tableDesc, const DataManager& dataManager)
- virtual Bool canRemoveColumn (const Vector<String>& columnNames) const
- virtual void removeColumn (const Vector<String>& columnNames)
- virtual Bool canRenameColumn (const String& columnName) const
- virtual void renameColumn (const String& newName, const String& oldName)
- virtual Vector<uInt> rowNumbers() const
- virtual BaseTable* root()
- virtual Bool rowOrder() const
- virtual Vector<uInt>* rowStorage()
- virtual Bool adjustRownrs (uInt nrrow, Vector<uInt>& rownrs, Bool determineOrder) const
- virtual BaseTable* doSort (PtrBlock<BaseColumn*>&, const PtrBlock<ObjCompareFunc*>&, const Block<Int>& sortOrder, int sortOption)
- virtual void renameSubTables (const String& newName, const String& oldName)
- Private Members
- NullTable (const NullTable&)
- NullTable& operator= (const NullTable&)
- void throwError (const String& name) const
Review Status
- Reviewed By:
- UNKNOWN
- Date Reviewed:
- before2004/08/25
Prerequisite
Etymology
NullTable represents a null table object, i.e. a Table object without
an underlying table..
Synopsis
Nullable is used to represent a null table.
The default Table constructor used to a create a null pointer
which results in core dumps when the Table object is actually used.
The NullTable object makes it possible to catch such cases
and throw an appropriate exception.
Member Description
Default constructor.
virtual Bool isNull() const
The table is a null table.
virtual void reopenRW()
virtual Bool asBigEndian() const
virtual Bool isMultiUsed (Bool checkSubTable) const
virtual const TableLock& lockOptions() const
virtual void mergeLock (const TableLock& lockOptions)
virtual Bool hasLock (FileLocker::LockType) const
virtual Bool lock (FileLocker::LockType, uInt nattempts)
virtual void unlock()
virtual void flush (Bool fsync, Bool recursive)
virtual void resync()
virtual uInt getModifyCounter() const
virtual Bool isWritable() const
virtual void deepCopy (const String& newName, const Record& dataManagerInfo, int tableOption, Bool valueCopy, int endianFormat, Bool noRows) const
virtual TableDesc actualTableDesc() const
virtual Record dataManagerInfo() const
virtual TableRecord& keywordSet()
virtual TableRecord& rwKeywordSet()
virtual BaseColumn* getColumn (uInt columnIndex) const
virtual BaseColumn* getColumn (const String& columnName) const
virtual Bool canAddRow() const
virtual void addRow (uInt nrrow, Bool initialize)
virtual Bool canRemoveRow() const
virtual void removeRow (uInt rownr)
virtual DataManager* findDataManager (const String& dataManagerName) const
virtual void addColumn (const ColumnDesc& columnDesc)
virtual void addColumn (const ColumnDesc& columnDesc, const String& dataManager, Bool byName)
virtual void addColumn (const ColumnDesc& columnDesc, const DataManager& dataManager)
virtual void addColumn (const TableDesc& tableDesc, const DataManager& dataManager)
virtual Bool canRemoveColumn (const Vector<String>& columnNames) const
virtual void removeColumn (const Vector<String>& columnNames)
virtual Bool canRenameColumn (const String& columnName) const
virtual void renameColumn (const String& newName, const String& oldName)
virtual Vector<uInt> rowNumbers() const
virtual BaseTable* root()
virtual Bool rowOrder() const
virtual Vector<uInt>* rowStorage()
virtual Bool adjustRownrs (uInt nrrow, Vector<uInt>& rownrs, Bool determineOrder) const
virtual BaseTable* doSort (PtrBlock<BaseColumn*>&, const PtrBlock<ObjCompareFunc*>&, const Block<Int>& sortOrder, int sortOption)
virtual void renameSubTables (const String& newName, const String& oldName)
All functions throw a "null table" exception.
NullTable (const NullTable&)
Copy constructor is forbidden, because copying a table requires
some more knowledge (like table name of result).
Declaring it private, makes it unusable.
NullTable& operator= (const NullTable&)
Assignment is forbidden, because copying a table requires
some more knowledge (like table name of result).
Declaring it private, makes it unusable.
Throw an exception with the name of the function.