OpendTect  6.6
seispreload.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: Bert
8  Date: Feb 2009
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 
13 -*/
14 
15 #include "seismod.h"
16 #include "bufstringset.h"
17 #include "datachar.h"
18 #include "datapackbase.h"
19 #include "multiid.h"
20 #include "ranges.h"
21 #include "task.h"
22 
23 class IOObj;
24 class Scaler;
25 class TrcKeyZSampling;
26 
27 namespace Seis
28 {
29 
32 public:
33  PreLoader(const MultiID&,Pos::GeomID =-1,
34  TaskRunner* =0);
35 
36  const MultiID& id() const { return mid_; }
37  Pos::GeomID geomID() const { return geomid_; }
38  void setTaskRunner( TaskRunner& t ) { tr_ = &t; }
39 
40  IOObj* getIOObj() const;
45 
46  bool load(const TrcKeyZSampling&,
49  Scaler* =0) const;
51  const TypeSet<Pos::GeomID>&,
54  Scaler* =0) const;
55  bool loadPS3D(const Interval<int>* inlrg=0) const;
56  bool loadPS2D(const char* lnm=0) const;
57  bool loadPS2D(const BufferStringSet&) const;
58 
59  void unLoad() const;
60  uiString errMsg() const { return errmsg_; }
61 
62  static void load(const IOPar&,TaskRunner* tr=0);
64  static void loadObj(const IOPar&,TaskRunner* tr=0);
66  void fillPar(IOPar&) const;
67 
68  static const char* sKeyLines();
69  static const char* sKeyUserType();
70 
71 protected:
72 
77  mutable uiString errmsg_;
78 
79  TaskRunner& getTr() const
80  { return *((TaskRunner*)(tr_ ? tr_ : &deftr_)); }
81 };
82 
83 
85 {
86 public:
88 
89  bool equals(const MultiID&,Pos::GeomID) const;
90 
93  int dpid_;
94  bool is2d_;
96 };
97 
98 
100 {
101 public:
102  void add(const MultiID&,DataPack*);
104  void remove(const MultiID&,Pos::GeomID =-1);
105  void remove(int dpid);
106  void removeAll();
107 
109  DataPack* get(int dpid);
110  const DataPack* get(const MultiID&,Pos::GeomID =-1) const;
111  const DataPack* get(int dpid) const;
113  BufferString&) const;
114 
115  void getIDs(TypeSet<MultiID>&) const;
116  bool isPresent(const MultiID&,Pos::GeomID =-1) const;
117 
119 
121 
122 protected:
123 
126 
127 public:
130 };
131 
133 
134 } // namespace Seis
135 
Seis::PreLoadDataManager
Definition: seispreload.h:100
Seis::PreLoadDataManager::isPresent
bool isPresent(const MultiID &, Pos::GeomID=-1) const
Seis::PreLoadDataEntry::PreLoadDataEntry
PreLoadDataEntry(const MultiID &, Pos::GeomID, int dpid)
Seis::PreLoader::unLoad
void unLoad() const
Seis::PreLoadDataManager::add
void add(const MultiID &, DataPack *)
task.h
Seis::PreLoader::inlRange
Interval< int > inlRange() const
PS 3D only. If nothing there: ret.start==mUdf(int)
Seis::PreLoadDataEntry::mid_
MultiID mid_
Definition: seispreload.h:91
datachar.h
Seis::PreLoader::geomid_
Pos::GeomID geomid_
Definition: seispreload.h:74
DataCharacteristics::Auto
@ Auto
Definition: datachar.h:87
Seis::PreLoader
Definition: seispreload.h:31
mGlobal
#define mGlobal(module)
Definition: commondefs.h:180
ObjectSet
Set of pointers to objects.
Definition: commontypes.h:31
Seis::PreLoader::loadPS3D
bool loadPS3D(const Interval< int > *inlrg=0) const
Seis::PreLoader::sKeyLines
static const char * sKeyLines()
Seis::PreLoader::tr_
TaskRunner * tr_
Definition: seispreload.h:75
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
Seis
Summary for a Seismic object.
Definition: segydirectdef.h:22
Seis::PreLoader::getTr
TaskRunner & getTr() const
Definition: seispreload.h:79
Seis::PreLoadDataEntry
Definition: seispreload.h:85
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
Seis::PreLoader::loadObj
static void loadObj(const IOPar &, TaskRunner *tr=0)
sKey::ID() and optional subselections
Seis::PreLoadDataManager::entries_
ManagedObjectSet< PreLoadDataEntry > entries_
Definition: seispreload.h:125
Seis::PreLoadDataEntry::dpid_
int dpid_
Definition: seispreload.h:93
Seis::PreLoader::loadPS2D
bool loadPS2D(const BufferStringSet &) const
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
Seis::PreLoadDataManager::get
const DataPack * get(const MultiID &, Pos::GeomID=-1) const
Seis::PreLoadDataManager::add
void add(const MultiID &, Pos::GeomID, DataPack *)
mODTextTranslationClass
#define mODTextTranslationClass(clss)
Definition: uistring.h:40
Seis::PreLoader::load
static void load(const IOPar &, TaskRunner *tr=0)
Seis.N.[loadObj_fmt].
Seis::PreLoader::sKeyUserType
static const char * sKeyUserType()
TrcKeyZSampling
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
ManagedObjectSet
ObjectSet where the objects contained are owned by this set.
Definition: manobjectset.h:57
multiid.h
Scaler
Scaling of floating point numbers.
Definition: scaler.h:33
Seis::PreLoader::fillPar
void fillPar(IOPar &) const
Seis::PreLoadDataManager::remove
void remove(const MultiID &, Pos::GeomID=-1)
Seis::PreLoadDataManager::remove
void remove(int dpid)
DataCharacteristics::UserType
UserType
Definition: datachar.h:87
Seis::PreLoader::getIOObj
IOObj * getIOObj() const
Seis::PreLoader::errmsg_
uiString errmsg_
Definition: seispreload.h:77
Seis::PreLoadDataEntry::equals
bool equals(const MultiID &, Pos::GeomID) const
Seis::PreLoadDataManager::get
DataPack * get(const MultiID &, Pos::GeomID=-1)
TaskRunner
Class that can execute a task.
Definition: task.h:170
Notifier
Class to help setup a callback handling.
Definition: notify.h:126
IOObj
Definition: ioobj.h:58
Seis::PreLoadDataEntry::name_
BufferString name_
Definition: seispreload.h:95
Seis::PreLoadDataManager::getInfo
void getInfo(const MultiID &, Pos::GeomID, BufferString &) const
datapackbase.h
Seis::PreLoader::geomID
Pos::GeomID geomID() const
Definition: seispreload.h:37
MultiID
Compound key consisting of ints.
Definition: multiid.h:24
Seis::PreLoader::loadPS2D
bool loadPS2D(const char *lnm=0) const
null => all
Seis::PreLoadDataManager::~PreLoadDataManager
~PreLoadDataManager()
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
Seis::PreLoader::load
bool load(const TrcKeyZSampling &, DataCharacteristics::UserType=DataCharacteristics::Auto, Scaler *=0) const
Seis::PreLoadDataManager::getIDs
void getIDs(TypeSet< MultiID > &) const
Seis::PreLoader::setTaskRunner
void setTaskRunner(TaskRunner &t)
Definition: seispreload.h:38
DataPackMgr
Manages DataPacks.
Definition: datapack.h:134
Seis::PreLoadDataManager::changed
Notifier< PreLoadDataManager > changed
Definition: seispreload.h:120
Seis::PreLoader::getLineNames
void getLineNames(BufferStringSet &) const
Line 2D only.
bufstringset.h
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
Seis::PreLoader::id
mODTextTranslationClass(PreLoader) public const MultiID & id() const
Definition: seispreload.h:36
Seis::PreLoadDataManager::get
DataPack * get(int dpid)
MPE::errmsg_
BufferString errmsg_
Definition: horizontracker.h:118
Seis::PreLoadDataEntry::is2d_
bool is2d_
Definition: seispreload.h:94
Seis::PreLoader::mid_
MultiID mid_
Definition: seispreload.h:73
Seis::PreLoadDataManager::PreLoadDataManager
PreLoadDataManager()
DataPack
A data packet: data+positioning and more that needs to be shared.
Definition: datapack.h:34
Seis::PreLoader::errMsg
uiString errMsg() const
Definition: seispreload.h:60
Seis::PreLoadDataManager::get
const DataPack * get(int dpid) const
Seis::PreLoader::deftr_
TaskRunner deftr_
Definition: seispreload.h:76
Seis::PreLoadDataManager::getEntries
const ObjectSet< PreLoadDataEntry > & getEntries() const
Seis::PLDM
PreLoadDataManager & PLDM()
Seis::PreLoadDataManager::removeAll
void removeAll()
Seis::PreLoadDataEntry::geomid_
Pos::GeomID geomid_
Definition: seispreload.h:92
ranges.h
Interval< int >
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
Seis::PreLoader::load
bool load(const TypeSet< TrcKeyZSampling > &, const TypeSet< Pos::GeomID > &, DataCharacteristics::UserType=DataCharacteristics::Auto, Scaler *=0) const
Pos::GeomID
Index_Type GeomID
Definition: commontypes.h:87
Seis::PreLoadDataManager::dpmgr_
DataPackMgr & dpmgr_
Definition: seispreload.h:124
TypeSet< TrcKeyZSampling >

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