28 #ifndef TABLES_PLAINTABLE_H 29 #define TABLES_PLAINTABLE_H 33 #include <casacore/casa/aips.h> 34 #include <casacore/tables/Tables/BaseTable.h> 35 #include <casacore/tables/Tables/TableCache.h> 36 #include <casacore/tables/Tables/TableRecord.h> 37 #include <casacore/tables/Tables/TableSyncData.h> 38 #include <casacore/tables/DataMan/TSMOption.h> 39 #include <casacore/casa/IO/AipsIO.h> 244 Bool byColumn)
const;
virtual uInt getModifyCounter() const
Get the modify counter.
A 1-D Specialization of the Array class.
virtual void unlock()
Unlock the table.
Create a new table - define shapes, data managers, etc.
const TableDesc & tableDesc() const
Get the table description.
MemoryIO * doReleaseCallBack(Bool always)
Class defining a plain regular table.
virtual Bool lock(FileLocker::LockType, uInt nattempts)
Try to lock the table for read or write access.
virtual void mergeLock(const TableLock &lockOptions)
Merge the given lock info with the existing one.
TableLockData * lockPtr_p
virtual DataManager * findDataManager(const String &name, Bool byColumn) const
Find the data manager with the given name or for the given column.
virtual void removeRow(uInt rownr)
Remove the given row.
AipsIO is the object persistency mechanism of Casacore.
Envelope class for the description of a table column.
Class to hold table synchronization data.
virtual void renameSubTables(const String &newName, const String &oldName)
Rename the subtables (used by rename function).
virtual Bool canAddRow() const
Test if it is possible to add a row to this table.
Class to hold table lock data.
virtual BaseColumn * getColumn(uInt columnIndex) const
Get a column object using its index.
virtual void addColumn(const ColumnDesc &columnDesc, Bool)
Add a column to the table.
virtual Record dataManagerInfo() const
Get the data manager info.
void setEndian(int endianFormat)
Determine and set the endian format (big or little).
virtual const TableLock & lockOptions() const
Get the locking info.
static TableCache theirTableCache
Class to manage a set of table columns.
int tableOption() const
Get the table option.
virtual Bool canRemoveColumn(const Vector< String > &columnNames) const
Test if columns can be removed.
virtual TableRecord & keywordSet()
Get readonly access to the table keyword set.
Options defining how table files are organized.
virtual const StorageOption & storageOption() const
Get the storage option used for the table.
Abstract base class for tables.
virtual Bool isMultiUsed(Bool checkSubTables) const
Is the table in use (i.e.
virtual void renameColumn(const String &newName, const String &oldName)
Rename a column.
void checkWritable(const char *func) const
Throw an exception if the table is not writable.
Options for the Tiled Storage Manager Access.
virtual void flush(Bool fsync, Bool recursive)
Flush the table, i.e.
virtual TableRecord & rwKeywordSet()
Get read/write access to the table keyword set.
A hierarchical collection of named fields of various types.
bool Bool
Define the standard types used by Casacore.
static void getLayout(TableDesc &desc, AipsIO &ios)
Return the layout of a table (i.e.
static TableCache & tableCache()
Get access to the TableCache.
PlainTable(SetupNewTable &, uInt nrrow, Bool initialize, const TableLock &lockOptions, int endianFormat, const TSMOption &tsmOption)
Construct the object for a new table.
virtual TableDesc actualTableDesc() const
Get the actual table description.
Class to hold table lock options.
A hierarchical collection of named fields of various types.
virtual void reopenRW()
Try to reopen the table for read/write access.
virtual Bool hasLock(FileLocker::LockType) const
Has this process the read or write lock, thus can the table be read or written safely?
void closeObject()
Close the object which is called by the destructor.
Bool putFile(Bool always)
When needed, write the table control information in an AipsIO file.
OpenOption
Define the possible ByteIO open options.
virtual void removeColumn(const Vector< String > &columnNames)
Remove columns.
virtual void addRow(uInt nrrow, Bool initialize)
Add one or more rows and possibly initialize them.
Abstract base class for a data manager.
void syncTable()
Synchronize the table after having acquired a lock which says that main table data has changed...
String: the storage and methods of handling collections of characters.
Class for IO to a memory buffer.
virtual Bool canRenameColumn(const String &columnName) const
Test if a column can be renamed (yes).
virtual Bool canRemoveRow() const
Test if it is possible to remove a row from this table.
virtual ~PlainTable()
The destructor flushes (i.e.
void autoReleaseLock(Bool always=False)
Do a release of an AutoLock when the inspection interval has expired.
Define the structure of a Casacore table.
PlainTable & operator=(const PlainTable &)
Assignment is forbidden, because copying a table requires some more knowledge (like table name of res...
static ByteIO::OpenOption toAipsIOFoption(int tableOption)
Convert a Table option to an AipsIO file option.
LockType
Define the possible lock types.
virtual void resync()
Resync the Table object with the table file.
this file contains all the compiler specific defines
virtual Bool asBigEndian() const
Is the table stored in big or little endian format?
static MemoryIO * releaseCallBack(void *plainTableObject, Bool always)
The callback function when a lock is released.
virtual void setTableChanged()
Set the table to being changed.
virtual void renameHypercolumn(const String &newName, const String &oldName)
Rename a hypercolumn.
Abstract base class for a table column.
virtual Bool isWritable() const
Test if the table is opened as writable.