databaseTable.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 
00008 
00009 #ifndef databaseTable_H_
00010 #define databaseTable_H_
00011 
00012 #include "vlDatabase.h"
00013 #include "databaseColumn.h"
00014 #include <list>
00015 #include <vlutil/vlString.h>
00016 #include <vlutil/vlSmartPointers.h>
00017 
00023 class DT_DLL_VLDB DtDatabaseTable
00024 {
00025 public:
00027    typedef std::list<DtDatabaseColumn> ColumnList;
00028    typedef ColumnList::iterator iterator;
00029    typedef ColumnList::const_iterator const_iterator;
00030 
00032    explicit DtDatabaseTable( const DtString& tableName );
00033 
00035    virtual ~DtDatabaseTable();
00036 
00039    virtual bool isShared() const;
00040    virtual void setShared(bool shared);
00041 
00043    virtual bool hasTableBeenCreated() const;
00044    virtual void setTableCreated(bool created);
00045 
00051    virtual DtDatabaseColumn& addColumn( const DtDatabaseColumn& column );
00052 
00055    virtual void removeColumn(iterator column);
00056 
00058    virtual void clearColumns();
00059 
00061    virtual void resetValues();
00062 
00064    virtual bool isEmpty(bool checkPrimaryKey) const;
00065 
00067    unsigned int autoIncrementKey();
00068 
00071    unsigned int lastLocalAutoIncrementKey() const;
00072 
00074    virtual DtString createCSVList(size_t index, bool skipNull, int maxColumnWidth) const;
00075 
00077    virtual const DtString& tableName() const;
00078 
00080    virtual void setName(const DtString& tableName);
00081 
00083    virtual size_t rowCount() const;
00084 
00086 
00087    virtual iterator getColumn(const DtString& columnName);
00088    virtual const_iterator getColumn(const DtString& columnName) const;
00090 
00092 
00093    virtual iterator begin();
00094    virtual const_iterator begin() const;
00096 
00098 
00099    virtual iterator end();
00100    virtual const_iterator end() const;
00102 
00103 protected:
00104 
00105    DtString myName;
00106    ColumnList myColumns;
00107    unsigned int myLocalAutoIncrementKey;
00108    bool mySharedFlag;
00109    bool myCreatedFlag;
00110 };
00111 
00112 typedef DtBoost::shared_ptr<DtDatabaseTable> DtDatabaseTableSP;
00113 
00114 #endif

Document ID: Generated on Tue Oct 11 19:41:03 EDT 2011 from SVN revision 107422
Copyright © 2005-2011 VT MÄK Inc. All Rights Reserved (www.mak.com)