Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

O3DBIRecordSet.h

Go to the documentation of this file.
00001 
00041 #if !defined(O3DBI_O3DBIRECORDSET_H)
00042 #define O3DBI_O3DBIRECORDSET_H
00043 
00044 #include "O3DBIRecord.h"
00045 
00046 typedef unsigned long                       TRecordIndex;
00051 typedef std::vector<O3DBIRecord>            TRecordSet;
00057 typedef TRecordSet::iterator                TRecordSetIter;
00064 typedef TRecordSet::const_iterator          TRecordSetConstIter;
00070 typedef TRecordSet::size_type               TRecordSetSize;
00071 
00078 class O3DBIRecordSet : public O3DBIObject  
00079 {
00080 // Construction/destruction
00081 public:
00085     O3DBIRecordSet();
00091     O3DBIRecordSet(const O3DBIRecordSet& records);
00103     O3DBIRecordSet(TRecordSetConstIter& first, TRecordSetConstIter& last);
00107     virtual ~O3DBIRecordSet();
00108 
00109 // Operations
00110 public:
00117     bool operator==(const O3DBIRecordSet& other) const;
00130     TRecordIndex InsertRecord(const O3DBIRecord& record);
00131 
00141     O3DBIRecord GetRecord(TRecordIndex index) const;
00151     const O3DBIRecord& operator[](TRecordIndex index) const;
00159     TO3DBIResult RemoveRecord(const O3DBIRecord& record);
00167     TO3DBIResult RemoveRecord(TRecordIndex index);
00173     TRecordSet& GetRecords(void);
00180     TRecordSetSize GetRecordCount(void) const;
00186     void CancelModified(void);
00196     bool IsModified(void) const;
00197     virtual TO3DBIString ToString(void) const;
00198 
00199 // Unit test routine
00200 #ifdef __TEST__
00201 
00205     static bool TestMe(void);
00206 #endif
00207 
00208 protected:
00209     TRecordSet          _records;
00210 };
00211 
00212 #endif // !defined(O3DBI_O3DBIRECORDSET_H)



SourceForge.net Logo Generated on Sun Jan 23 11:36:34 2005 for Oracle Object Oriented Database Interface (O3DBI) by  doxygen 1.3.9.1