OpendTect-6_4  6.4
syntheticdataimpl.h
Go to the documentation of this file.
1 #ifndef syntheticdataimpl_h
2 #define syntheticdataimpl_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Bruno
9  Date: July 2011
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "wellattribmod.h"
16 #include "syntheticdata.h"
17 
18 class RayTracer1D;
19 class ElasticModel;
20 class SeisTrcBufDataPack;
21 class PropertyRef;
22 
23 namespace PreStack { class GatherSetDataPack; class Gather; }
24 
25 
27 {
28 public:
29  PostStackSyntheticData(const SynthGenParams&,
32 
33  bool isPS() const { return false; }
34  bool hasOffset() const { return false; }
35  bool isAngleStack() const { return false; }
36  SynthGenParams::SynthType synthType() const
37  { return SynthGenParams::ZeroOffset; }
38 
39  const SeisTrc* getTrace(int seqnr) const;
40 
41  SeisTrcBufDataPack& postStackPack();
42  const SeisTrcBufDataPack& postStackPack() const;
43 
44  static const char* sDataPackCategory();
45 
46 };
47 
48 
50  : public PostStackSyntheticData
51 {
52 public:
54  const SynthGenParams&,SeisTrcBufDataPack&);
56  void useGenParams(const SynthGenParams&);
57  void fillGenParams(SynthGenParams&) const;
58 protected:
61 };
62 
63 
66 {
67 public:
69  const SynthGenParams& sgp,
70  SeisTrcBufDataPack& sbufdp )
71  : PSBasedPostStackSyntheticData(sgp,sbufdp)
72  {}
73  bool isAVOGradient() const { return true; }
74  bool isAngleStack() const { return false; }
75  SynthGenParams::SynthType synthType() const
76  { return SynthGenParams::AVOGradient; }
77 protected:
78 };
79 
80 
83 {
84 public:
86  const SynthGenParams& sgp,
87  SeisTrcBufDataPack& sbufdp )
88  : PSBasedPostStackSyntheticData(sgp,sbufdp)
89  {}
90  bool isAVOGradient() const { return false; }
91  bool isAngleStack() const { return true; }
92  SynthGenParams::SynthType synthType() const
93  { return SynthGenParams::AngleStack; }
94 protected:
95 };
96 
97 
99 {
100 public:
101  PreStackSyntheticData(const SynthGenParams&,
104 
105  bool isPS() const { return true; }
106  bool isNMOCorrected() const;
107  bool hasOffset() const;
108  const Interval<float> offsetRange() const;
109  float offsetRangeStep() const;
110  SynthGenParams::SynthType synthType() const
111  { return SynthGenParams::PreStack; }
112 
113  void setAngleData(
115  const SeisTrc* getTrace(int seqnr) const
116  { return getTrace(seqnr,0); }
117  const SeisTrc* getTrace(int seqnr,int* offset) const;
118  SeisTrcBuf* getTrcBuf(float startoffset,
119  const Interval<float>* of=0) const;
120 
121  PreStack::GatherSetDataPack& preStackPack();
122  const PreStack::GatherSetDataPack& preStackPack() const;
123  const PreStack::GatherSetDataPack& angleData() const { return *angledp_; }
124 
125 protected:
126 
128  void convertAngleDataToDegrees(
129  PreStack::Gather*) const;
130 };
131 
132 
134 {
135 public:
136  StratPropSyntheticData(const SynthGenParams&,
138  const PropertyRef&);
139 
140  const PropertyRef& propRef() const { return prop_; }
141  SynthGenParams::SynthType synthType() const
142  { return SynthGenParams::StratProp; }
143 
144 protected:
146 };
147 
148 
149 #endif
#define mExpClass(module)
Definition: commondefs.h:160
A table of elastic prop layers with processing utilities.
Definition: ailayer.h:100
SynthGenParams::SynthType synthType() const
Definition: syntheticdataimpl.h:75
bool isAngleStack() const
Definition: syntheticdataimpl.h:91
PreStack gather.
Definition: prestackgather.h:36
Definition: syntheticdataimpl.h:81
Ref Data for a (usually petrophysical) property.
Definition: propertyref.h:42
const PreStack::GatherSetDataPack & angleData() const
Definition: syntheticdataimpl.h:123
Definition: synthseis.h:36
bool isAngleStack() const
Definition: syntheticdataimpl.h:35
Definition: syntheticdata.h:38
Definition: syntheticdataimpl.h:49
bool isAVOGradient() const
Definition: syntheticdataimpl.h:73
Interval< float > anglerg_
Definition: syntheticdataimpl.h:60
const SeisTrc * getTrace(int seqnr) const
Definition: syntheticdataimpl.h:115
BufferString inpsynthnm_
Definition: syntheticdataimpl.h:59
Definition: syntheticdataimpl.h:26
bool hasOffset() const
Definition: syntheticdataimpl.h:34
PreStack::GatherSetDataPack * angledp_
Definition: syntheticdataimpl.h:127
Definition: seistype.h:54
A DataPack containing an objectset of gathers.
Definition: prestackgather.h:152
Definition: syntheticdataimpl.h:133
SynthGenParams::SynthType synthType() const
Definition: syntheticdataimpl.h:110
bool isPS() const
Definition: syntheticdataimpl.h:105
FlatDataPack based on SeisTrcBuf.
Definition: seisbufadapters.h:65
SynthGenParams::SynthType synthType() const
Definition: syntheticdataimpl.h:36
const PropertyRef & propRef() const
Definition: syntheticdataimpl.h:140
Ray tracer in 1D.
Definition: raytrace1d.h:32
bool isPS() const
Definition: syntheticdataimpl.h:33
Definition: syntheticdataimpl.h:98
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
SynthGenParams::SynthType synthType() const
Definition: syntheticdataimpl.h:141
Seismic trace.
Definition: seistrc.h:34
set of seismic traces.
Definition: seisbuf.h:31
AVOGradSyntheticData(const SynthGenParams &sgp, SeisTrcBufDataPack &sbufdp)
Definition: syntheticdataimpl.h:68
bool isAVOGradient() const
Definition: syntheticdataimpl.h:90
SynthGenParams::SynthType synthType() const
Definition: syntheticdataimpl.h:92
bool isAngleStack() const
Definition: syntheticdataimpl.h:74
const SeisTrc * getTrace(EM::SubID) const
const PropertyRef & prop_
Definition: syntheticdataimpl.h:145
AngleStackSyntheticData(const SynthGenParams &sgp, SeisTrcBufDataPack &sbufdp)
Definition: syntheticdataimpl.h:85
Definition: syntheticdataimpl.h:64

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