Here is the public interfaces of LinearHashingFile:
class LinearHashingFile : public IndexFile {
public:
// constructor for the LinearHashingFile class -- create the index
// name -- name of the index
// length, type -- describing the key attribute
// N -- the number of initial buckets, default = 1
LinearHashingFile(Status& status, const char* name, const int length,
const AttrType type, const int N = 1);
// constructor for the LinearHashingFile class -- open the index
// assume the index already exists
// name -- name of the index
LinearHashingFile(Status& status, const char * name);
// destructor
~LinearHashingFile();
// destroy the index
Status destroyFile(void);
// insert an entry <value, rid> to the index
Status insert(const void* value, const RID rid);
// delete an entry <value, rid> from the index
Status Delete(const void* value, const RID rid);
// open an exact match scan with "value" as the key
IndexFileScan * new_scan(const void* value);
#ifdef DEBUGLH
void PrintHeader(); // print the header info
void PrintBucket(); // print all the buckets
void PrintBucket(int BucNum); // print bucket "BucNum"
#endif DEBUGLH
};