UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
s2_abstract_db_access.hpp
1 /* s2_abstract_db_access.hpp */
2 /* $Id$ */
3 #ifndef __s2_abstract_db_access_hpp
4 #define __s2_abstract_db_access_hpp
5 
6 #include <set>
7 
8 #ifdef GE_BUILD
9 #include <wave_field.hpp>
10 #else
11 #include <s2proc/wave_field.hpp>
12 #endif
13 
16 {
17 public:
18 
20  enum PointType
21  {
33  };
34 
37  {
40  };
41 
42 
45 
47  virtual ~S2AbstractDBAccess();
48 
50  virtual S2AbstractDBAccess* clone() const {return 0x0;}
51 
52 
54  virtual int getSamplesNum() const = 0;
55 
57  virtual Trace::TimeT getTimeStep() const = 0;
58 
59 
61  virtual int getTracesNum() const = 0;
62 
64  virtual bool getTrace(int id, Trace &tr) const = 0;
65 
66 
69  virtual bool getWaveField(const Trace::Header::AttrId &attr,
70  int id,
71  WaveField &wf) const = 0;
72 
75  virtual bool getWaveField(PointType ptype,
76  int id1,
77  int id2,
78  WaveField &wf) const = 0;
79 
82  virtual bool getWaveField(PointType3 ptype,
83  int id1,
84  int id2,
85  int id3,
86  WaveField &wf) const = 0;
87 
90  virtual bool getWaveField(int nsl, int nss, int nrl, int nrs, WaveField &wf) const = 0;
91 
92 
95  virtual bool getShotsIds(std::set<int> &ids) const = 0;
96 
99  virtual bool getRecvsIds(std::set<int> &ids) const = 0;
100 
103  virtual bool getCMPsIds(std::set<int> &ids) const = 0;
104 
107  virtual bool getLIds(std::set<int> &ids) const = 0;
108 
111  virtual bool getCompsIds(std::set<int> &ids) const = 0;
112 
115  virtual bool getShotLinesIds(std::set<int> &ids) const = 0;
116 
119  virtual bool getShotsOnLineIds(int line_id, std::set<int> &ids) const = 0;
120 
123  virtual bool getRecvLinesIds(std::set<int> &ids) const = 0;
124 
127  virtual bool getRecvsOnLineIds(int line_id, std::set<int> &ids) const = 0;
128 
130  virtual bool getPSCStrides(std::set<int> &strides) const = 0;
131 
133  virtual bool getPSCDirs(std::set<int> &dirs) const = 0;
134 
136  bool getIds(const Trace::Header::AttrId &attr, std::set<int> &ids) const;
137 
138 
140  virtual bool appendTrace(const Trace &tr) = 0;
141 };
142 
143 #endif /* s2_abstract_db_access.hpp */
144 
Definition: s2_abstract_db_access.hpp:29
virtual bool getLIds(std::set< int > &ids) const =0
Definition: s2_abstract_db_access.hpp:26
virtual bool getShotsIds(std::set< int > &ids) const =0
float TimeT
Definition: trace.hpp:22
Definition: s2_abstract_db_access.hpp:28
PointType
Definition: s2_abstract_db_access.hpp:20
Definition: s2_abstract_db_access.hpp:22
virtual bool getWaveField(const Trace::Header::AttrId &attr, int id, WaveField &wf) const =0
Definition: s2_abstract_db_access.hpp:15
virtual Trace::TimeT getTimeStep() const =0
Definition: s2_abstract_db_access.hpp:32
virtual bool getPSCDirs(std::set< int > &dirs) const =0
virtual bool getPSCStrides(std::set< int > &strides) const =0
virtual bool appendTrace(const Trace &tr)=0
Definition: s2_abstract_db_access.hpp:23
virtual bool getRecvsIds(std::set< int > &ids) const =0
bool getIds(const Trace::Header::AttrId &attr, std::set< int > &ids) const
Definition: wave_field.hpp:13
PointType3
Definition: s2_abstract_db_access.hpp:36
Definition: trace.hpp:14
Definition: s2_abstract_db_access.hpp:27
virtual bool getRecvsOnLineIds(int line_id, std::set< int > &ids) const =0
Definition: s2_abstract_db_access.hpp:31
virtual bool getCMPsIds(std::set< int > &ids) const =0
virtual S2AbstractDBAccess * clone() const
Definition: s2_abstract_db_access.hpp:50
virtual int getTracesNum() const =0
virtual bool getRecvLinesIds(std::set< int > &ids) const =0
virtual ~S2AbstractDBAccess()
Definition: s2_abstract_db_access.hpp:24
virtual bool getCompsIds(std::set< int > &ids) const =0
virtual bool getTrace(int id, Trace &tr) const =0
virtual bool getShotLinesIds(std::set< int > &ids) const =0
virtual int getSamplesNum() const =0
virtual bool getShotsOnLineIds(int line_id, std::set< int > &ids) const =0
Definition: s2_abstract_db_access.hpp:25
Definition: s2_abstract_db_access.hpp:38
Definition: s2_abstract_db_access.hpp:30
AttrId
Definition: trace.hpp:34