OpendTect  6.3
raysynthgenerator.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: A.H. Bril
8  Date: 24-3-1996
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "prestackprocessingmod.h"
14 #include "syntheticdata.h"
15 #include "synthseis.h"
16 
17 class SeisTrc;
18 class SeisTrcBuf;
19 class RayTracerRunner;
20 class TimeDepthModel;
21 class DataPack;
22 
23 
26 mExpClass(PreStackProcessing) RaySynthGenerator : public ParallelTask
27  , public Seis::SynthGenBase
29 public:
30 
32  const SynthGenParams&);
34  bool overwrite);
36 
37  void reset();
38 
39  //input
40  void fillPar(IOPar& raypars) const;
41  bool usePar(const IOPar& raypars);
42  void forceReflTimes(const StepInterval<float>&);
43 
44  //available after initialization
45  void getAllRefls(RefMan<ReflectivityModelSet>&);
46 
47  uiString message() const
48  { return errmsg_.isEmpty() ? message_ : errmsg_; }
49 
50 
51  //available after execution
52  SyntheticData::RayModel& result(int id)
53  { return *(*synthdata_->raymodels_)[id]; }
54  const SyntheticData::RayModel& result(int id) const
55  { return *(*synthdata_->raymodels_)[id]; }
56 
57  const ObjectSet<RayTracer1D>& rayTracers() const;
58  const TypeSet<ElasticModel>& elasticModels() const { return *aimodels_; }
59  void getTraces(ObjectSet<SeisTrcBuf>&);
60  void getStackedTraces(SeisTrcBuf&);
61  RefMan<SyntheticData> getSyntheticData() const { return synthdata_; }
62  bool updateDataPack();
63 
64 protected:
66  od_int64 nrIterations() const;
67  od_int64 nrDone() const;
68  uiString nrDoneText() const;
69  od_int64 totalNr() const;
70  bool doPrepare(int);
71  bool doWork(od_int64,od_int64,int);
72  bool doFinish(bool);
73 
79 
83  bool overwrite_;
85 };
#define mExpClass(module)
Definition: commondefs.h:157
Seismics.
Definition: segydirectdef.h:20
base class for synthetic trace generators.
Definition: raysynthgenerator.h:26
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:200
#define od_int64
Definition: plftypes.h:34
const TypeSet< ElasticModel > & elasticModels() const
Definition: raysynthgenerator.h:58
Definition: uistring.h:88
Generalization of a task that can be run in parallel.
Definition: paralleltask.h:64
A data packet: data+positioning and more that needs to be shared.
Definition: datapack.h:39
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
bool overwrite_
Definition: raysynthgenerator.h:83
uiString message_
Definition: raysynthgenerator.h:75
uiString message() const
Definition: raysynthgenerator.h:47
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
RayTracerRunner * rtr_
Definition: raysynthgenerator.h:65
bool ownraymodels_
Definition: raysynthgenerator.h:74
StepInterval< float > forcedrefltimes_
Definition: raysynthgenerator.h:80
TypeSet< float > offsets_
Definition: raysynthgenerator.h:77
bool isEmpty() const
Definition: odstring.h:49
Seismic trace.
Definition: seistrc.h:31
BufferString errmsg_
Definition: horizontracker.h:117
SyntheticData::RayModel & result(int id)
Definition: raysynthgenerator.h:52
Definition: raytracerrunner.h:20
bool raytracingdone_
Definition: raysynthgenerator.h:82
set of seismic traces.
Definition: seisbuf.h:28
RefMan< SyntheticData > synthdata_
Definition: raysynthgenerator.h:84
RefMan< SyntheticData > getSyntheticData() const
Definition: raysynthgenerator.h:61
IOPar raysetup_
Definition: raysynthgenerator.h:78
Converts between time, depth and velocity given a model. The velocity model can be either RMO-velocit...
Definition: velocitycalc.h:29
bool forcerefltimes_
Definition: raysynthgenerator.h:81
Definition: stratsynthgenparams.h:18
const TypeSet< ElasticModel > * aimodels_
Definition: raysynthgenerator.h:76
const SyntheticData::RayModel & result(int id) const
Definition: raysynthgenerator.h:54

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