00001
00002
00003
00004
00005
00006
00007
00008 #ifndef RECORDFILESCAN_H_
00009 #define RECORDFILESCAN_H_
00010
00015 #include "RecordManager.h"
00016 #include "Record.h"
00017
00021 enum AttributeType {
00022 INTEGER,
00023 FLOAT,
00024 STRING
00025 };
00026
00030 enum ComparisonOp {
00031 EQ_OP,
00032 LT_OP,
00033 GT_OP,
00034 LE_OP,
00035 GE_OP,
00036 NE_OP,
00037 NO_OP
00038 };
00039
00047 class RecordFileScan {
00048 public:
00049
00050 RecordFileScan();
00051 ~RecordFileScan();
00052
00084 ReturnCode openScan(RecordFileHandle *fileHandle, AttributeType attrType,
00085 int attrLength, int attrOffset, ComparisonOp compOp, void* value);
00086
00096 ReturnCode getNextRecord(Record *record);
00097
00104 ReturnCode closeScan();
00105
00106 };
00107
00108
00109 #endif