00001
#ifndef _ARCHIVE_ITERATOR_H_
00002
#define _ARCHIVE_ITERATOR_H_
00003
00004
00005
00006
00007
00008
00018
struct ArchiveIterator
00019 {
00020 FILE *pFile;
00021 ScanHeader *pScanHeader;
00022
Experiment *expmnt;
00023
float dVersion;
00024
int nScans;
00025
int nType;
00026
int nCurrScan;
00027
00028 };
00029
00030
typedef struct ArchiveIterator ArchiveIterator;
00031
00032
void ArchiveIterator_init(ArchiveIterator* iter,
Experiment* epxmnt, FILE* fp);
00033
int ArchiveIterator_loadHeader (ArchiveIterator* iter);
00034
void* ArchiveIterator_getNext(ArchiveIterator* iter,
int* nSize);
00035
void* ArchiveIterator_getNextWithLimits(ArchiveIterator* iter,
int* nSize,
Rectangle4i* limits);
00036
void ArchiveIterator_seekScan(ArchiveIterator* iter,
int scan);
00037
void ArchiveIterator_destroy(ArchiveIterator* iter);
00038
00039
#endif
00040
00041
00042
00043