OpendTect  6.3
seiszaxisstretcher.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: K. Tingdahl
8  Date: January 2008
9 ________________________________________________________________________
10 
11 */
12 
13 
14 #include "seiscommon.h"
15 #include "trckeyzsampling.h"
16 #include "paralleltask.h"
17 #include "thread.h"
18 
19 class IOObj;
20 class SeisTrc;
21 class SeisTrcWriter;
23 class ZAxisTransform;
24 namespace Seis { class Provider; }
25 
26 
33 public:
34  SeisZAxisStretcher( const IOObj& in,
35  const IOObj& out,
36  const TrcKeyZSampling& outcs,
38  bool forward,
39  bool stretchz);
41 
42  bool isOK() const;
43 
44  void setGeomID(Pos::GeomID);
45  uiString message() const;
46 
47  void setVelTypeIsVint( bool yn ) { isvint_ = yn; }
48  void setVelTypeIsVrms( bool yn ) { isvrms_ = yn; }
49 
50 protected:
51 
52  void init(const IOObj& in,const IOObj& out);
53  bool doPrepare(int);
54  bool doFinish(bool);
55  bool doWork(od_int64,od_int64,int);
56  od_int64 nrIterations() const { return totalnr_; }
57 
58  bool getInputTrace(SeisTrc&,TrcKey&);
59  bool getModelTrace(SeisTrc&,TrcKey&);
60  bool loadTransformChunk(int firstinl);
61 
65 
67 
74 
78  int voiid_;
79  bool ist2d_;
80  bool is2d_;
81  bool stretchz_;
82 
84  bool isvint_;
85  bool isvrms_;
86 
87 };
#define mExpClass(module)
Definition: commondefs.h:157
Seismics.
Definition: segydirectdef.h:20
Is an object that faciliates many threads to wait for something to happen.
Definition: thread.h:108
Threads::ConditionVar readerlock_
Definition: seiszaxisstretcher.h:63
Definition: ioobj.h:57
Seis::Provider * seisprovider_
Definition: seiszaxisstretcher.h:62
void setVelTypeIsVint(bool yn)
Definition: seiszaxisstretcher.h:47
SeisTrcWriter * seiswriter_
Definition: seiszaxisstretcher.h:68
is the access point for seismic traces. Instantiate a subclass and ask for what you need...
Definition: seisprovider.h:54
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
Threads::ConditionVar readerlockmodel_
Definition: seiszaxisstretcher.h:64
#define od_int64
Definition: plftypes.h:34
bool init()
Definition: seiswrite.h:38
bool isvrms_
Definition: seiszaxisstretcher.h:85
uiString errmsg_
Definition: seiszaxisstretcher.h:73
Definition: uistring.h:88
Generalization of a task that can be run in parallel.
Definition: paralleltask.h:64
TrcKeySampling curhrg_
Definition: seiszaxisstretcher.h:76
Definition: seiszaxisstretcher.h:31
void message(const char *)
default: to stderr
FixedString Provider()
Definition: keystrs.h:103
bool waitforall_
Definition: seiszaxisstretcher.h:70
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:25
void setVelTypeIsVrms(bool yn)
Definition: seiszaxisstretcher.h:48
int nrwaiting_
Definition: seiszaxisstretcher.h:71
ZAxisTransform * ztransform_
Definition: seiszaxisstretcher.h:77
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:32
bool isvint_
Definition: seiszaxisstretcher.h:84
bool ist2d_
Definition: seiszaxisstretcher.h:79
int nrthreads_
Definition: seiszaxisstretcher.h:72
Index_Type GeomID
Definition: commontypes.h:48
int voiid_
Definition: seiszaxisstretcher.h:78
Seismic trace.
Definition: seistrc.h:31
Definition: seiswrite.h:113
bool stretchz_
Definition: seiszaxisstretcher.h:81
Seis::Provider * seisprovidertdmodel_
Definition: seiszaxisstretcher.h:66
bool is2d_
Definition: seiszaxisstretcher.h:80
Represents a unique trace position in one of the surveys that OpendTect is managing.
Definition: trckey.h:26
od_int64 nrIterations() const
Definition: seiszaxisstretcher.h:56
od_int64 totalnr_
Definition: seiszaxisstretcher.h:83
Base class for z-axis transforms.
Definition: zaxistransform.h:35
TrcKeyZSampling outcs_
Definition: seiszaxisstretcher.h:75
SeisSequentialWriter * sequentialwriter_
Definition: seiszaxisstretcher.h:69

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