OpendTect-6_4  6.4
seispsread.h
Go to the documentation of this file.
1 #ifndef seispsread_h
2 #define seispsread_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: A.H. Bril
9  Date: Dec 2004
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "seismod.h"
16 #include "bufstring.h"
17 #include "binid.h"
18 #include "uistring.h"
19 
20 
21 class SeisTrc;
22 class SeisTrcBuf;
23 class BufferStringSet;
24 namespace PosInfo { class CubeData; class Line2DData; }
25 
26 
35 {
36 public:
37 
38  virtual ~SeisPSReader() {}
39  virtual bool is2D() const = 0;
40 
41  virtual void usePar(const IOPar&) {}
42 
43  virtual uiString errMsg() const = 0;
44  virtual SeisTrc* getTrace(const BinID&,int nr=0) const;
45  virtual bool getGather(const BinID&,SeisTrcBuf&) const = 0;
46 
47  virtual bool getSampleNames(BufferStringSet&) const
48  { return false; }
49 
50  virtual StepInterval<float> getZRange() const;
51 
52 };
53 
57 {
58 public:
59 
60  bool is2D() const { return false; }
61 
62  virtual const PosInfo::CubeData& posData() const = 0;
63 
64 };
65 
66 
70 {
71 public:
72  SeisPS2DReader(const char* lnm);
74  bool is2D() const { return true; }
75  const char* lineName() const { return lnm_.buf(); }
76  Pos::GeomID geomID() const { return geomid_; }
77 
78  // Cannot use name overloading: seems gcc prob
79  SeisTrc* getTrc( int trcnr, int nr=0 ) const
80  { return getTrace( BinID(0,trcnr), nr ); }
81  bool getGath( int trcnr, SeisTrcBuf& b ) const
82  { return getGather( BinID(0,trcnr), b ); }
83 
84  virtual const PosInfo::Line2DData& posData() const = 0;
85 
86 protected:
87 
90 
91 };
92 
93 
94 #endif
#define mExpClass(module)
Definition: commondefs.h:160
Summary for a Seismic object.
Definition: segydirectdef.h:23
Pos::GeomID geomid_
Definition: seispsread.h:89
Position info for a 2D line.
Definition: posinfo2d.h:65
Definition: uistring.h:89
Set of BufferString objects.
Definition: bufstringset.h:28
reads from a 3D prestack seismic data store.
Definition: seispsread.h:56
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
SeisTrc * getTrc(int trcnr, int nr=0) const
Definition: seispsread.h:79
BufferString lnm_
Definition: seispsread.h:88
Pos::GeomID geomID() const
Definition: seispsread.h:76
virtual bool getSampleNames(BufferStringSet &) const
Definition: seispsread.h:47
const char * lineName() const
Definition: seispsread.h:75
bool getGath(int trcnr, SeisTrcBuf &b) const
Definition: seispsread.h:81
bool is2D() const
Definition: seispsread.h:60
virtual void usePar(const IOPar &)
Definition: seispsread.h:41
Index_Type GeomID
Definition: commontypes.h:52
Position info, often segmented.
Definition: posinfo.h:40
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
Seismic trace.
Definition: seistrc.h:34
bool is2D(const PicksType &picks)
Definition: pickset.h:142
set of seismic traces.
Definition: seisbuf.h:31
virtual ~SeisPSReader()
Definition: seispsread.h:38
const char * errMsg() const
Definition: horizontracker.h:61
reads from a prestack seismic data store.
Definition: seispsread.h:34
reads from a 2D prestack seismic data store.
Definition: seispsread.h:69
Position info for an entire 3D cube. The LineData&#39;s are not sorted.
Definition: posinfo.h:95
bool is2D() const
Definition: seispsread.h:74
const SeisTrc * getTrace(EM::SubID) const

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2019