1 #ifndef rsf_REGFILE_FUNC_H 2 #define rsf_REGFILE_FUNC_H 1 5 #include "genericFile.h" 17 virtual inline void seekToPos(
const long long pos){
18 long long ft=ftell(_myf);
19 long long bg=1024*1024*1024;
20 long long diff=pos-ft;
23 if(diff>0) dst=std::min(bg,diff);
24 else dst=-std::min(-diff,bg);
25 sf_seek(_file,dst,SEEK_CUR);
29 virtual void readStream(
const long long sz,
void *data){
30 sf_ucharread((
unsigned char*)data,sz,_file);
33 virtual void writeStream(
const long long sz,
const void *data){
35 sf_ucharwrite((
unsigned char*)data,sz,_file);
48 virtual int getInt(
const std::string arg)
const;
49 virtual int getInt(
const std::string arg,
const int def)
const;
51 virtual float getFloat(
const std::string,
const float def)
const;
52 virtual float getFloat(
const std::string)
const;
54 virtual std::string getString(
const std::string arg)
const;
55 virtual std::string getString(
const std::string arg,
const std::string def)
const;
58 virtual bool getBool(
const std::string,
const bool def)
const;
59 virtual bool getBool(
const std::string)
const;
60 virtual void seekTo(
const long long iv,
const int whence);
63 virtual std::vector<int> getInts(
const std::string arg,
int num)
const;
64 virtual std::vector<int> getInts(
const std::string arg,std::vector<int> &defs)
const;
66 virtual std::vector<float> getFloats(
const std::string arg,
int num)
const;
67 virtual std::vector<float> getFloats(
const std::string arg,std::vector<float> &defs)
const;
69 virtual void error(
const std::string err)
const;
70 virtual void readComplexStream(
float _Complex*array,
const long long npts);
71 virtual void readFloatStream(
float *array,
const long long npts);
72 virtual void readUCharStream(
unsigned char *array,
const long long npts);
73 virtual void writeComplexStream(
const float _Complex *array,
const long long npts);
75 virtual void writeFloatStream(
const float *array,
const long long npts);
76 virtual void readUCharWindow(
const std::vector<int>& nw,
const std::vector<int>& fw,
77 const std::vector<int>& jw,
unsigned char *array);
79 virtual void readComplexWindow(
const std::vector<int>& nw,
const std::vector<int> &fw,
80 const std::vector<int> &jw,
float _Complex *array);
82 virtual void writeComplexWindow(
const std::vector<int>& nw,
const std::vector<int>& fw,
83 const std::vector<int>& jw,
float _Complex *array);
85 virtual void readFloatWindow(
const std::vector<int> &nw,
const std::vector<int> &fw,
86 const std::vector<int>& jw,
float *array);
88 virtual void writeFloatWindow(
const std::vector<int>& nw,
const std::vector<int>& fw,
89 const std::vector<int> &jw,
float *array);
90 virtual void readDescription();
91 virtual void writeDescription();
92 virtual void putInt(
const std::string par,
const int val);
93 virtual void putFloat(
const std::string par,
const float val);
94 virtual void putString(
const std::string par,
const std::string val);
95 virtual void putBool(
const std::string par,
const bool val);
96 virtual void putInts(
const std::string par,
const std::vector<int> val);
97 virtual void putFloats(
const std::string par,
const std::vector<float> val);
98 virtual void close()
const {
107 std::shared_ptr<rsfBasic> myio;
Definition: rsfRegFiles.h:12
Definition: rsfRegFiles.h:42