OpendTect-6_4  6.4
seisstor.h
Go to the documentation of this file.
1 #ifndef seisstor_h
2 #define seisstor_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: 20-1-98
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 Trace storage objects handle seismic data storage.
14 
15 -*/
16 
17 
18 #include "seismod.h"
19 #include "seisinfo.h"
20 #include "uistring.h"
21 
22 class Conn;
23 class IOObj;
24 class Translator;
25 class Seis2DDataSet;
26 class SeisPSIOProvider;
27 class SeisTrcTranslator;
28 namespace Seis { class SelData; }
29 
30 
34 { mODTextTranslationClass(SeisStoreAccess);
35 public:
36 
37  virtual ~SeisStoreAccess();
38  virtual bool close();
39 
40  bool is2D() const { return is2d_; }
41  bool isPS() const { return psioprov_; }
43  { return Seis::geomTypeOf(is2D(),isPS()); }
44 
45  uiString errMsg() const { return errmsg_; }
46  int tracesHandled() const
47  { return nrtrcs_; }
48 
49  const IOObj* ioObj() const
50  { return ioobj_; }
51  void setIOObj(const IOObj*);
52  const Seis::SelData* selData() const
53  { return seldata_; }
54  virtual void setSelData(Seis::SelData*);
56 
57  virtual void usePar(const IOPar&);
58  // Afterwards check whether curConn is still OK.
59  virtual void fillPar(IOPar&) const;
60 
61  static const char* sNrTrcs;
62 
63  // Note that the Translator is always created, but only actually used for 3D
64  Translator* translator() { return trl_; }
65  Translator* translator() const { return trl_; }
66 
67  // 3D only
68  Conn* curConn3D();
69  const Conn* curConn3D() const;
70 
71  // 3D and 2D
72  SeisTrcTranslator* seisTranslator() { return strl(); }
73  const SeisTrcTranslator* seisTranslator() const { return strl(); }
74  // 2D only
75  Seis2DDataSet* dataSet() { return dataset_; }
76  const Seis2DDataSet* dataSet() const { return dataset_; }
77 
78  // Prestack only
79  const SeisPSIOProvider* psIOProv() const { return psioprov_; }
80 
81 protected:
82 
83  SeisStoreAccess(const IOObj*);
84  SeisStoreAccess(const char*,bool is2d,bool isps);
85  virtual void init() {}
86  bool cleanUp(bool alsoioobj=true);
87 
89  bool is2d_;
90  int nrtrcs_;
95  mutable uiString errmsg_;
96 
97  SeisTrcTranslator* strl() const;
98 
99 };
100 
101 
102 #endif
const Seis::SelData * selData() const
Definition: seisstor.h:52
#define mExpClass(module)
Definition: commondefs.h:160
const SeisPSIOProvider * psIOProv() const
Definition: seisstor.h:79
const SeisTrcTranslator * seisTranslator() const
Definition: seisstor.h:73
Summary for a Seismic object.
Definition: segydirectdef.h:23
Definition: ioobj.h:58
bool is2d_
Definition: seisstor.h:89
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
uiString errMsg() const
Definition: seisstor.h:45
bool is2D(GeomType gt)
Definition: seistype.h:34
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
bool is2D() const
Definition: seisstor.h:40
Seis::GeomType geomType() const
Definition: seisstor.h:42
int tracesHandled() const
Definition: seisstor.h:46
uiString errmsg_
Definition: seisstor.h:95
Definition: uistring.h:89
int nrtrcs_
Definition: seisstor.h:90
Prestack Seismics objects provider.
Definition: seispsioprov.h:63
GeomType
Definition: seistype.h:33
bool isPS(GeomType gt)
Definition: seistype.h:38
static const char * sNrTrcs
Definition: seisstor.h:61
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
Definition: seistrctr.h:90
const IOObj * ioObj() const
Definition: seisstor.h:49
IOObj * ioobj_
Definition: seisstor.h:88
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
Translator * translator() const
Definition: seisstor.h:65
contains input (sub-)selection data from a cube or lineset
Definition: seisselection.h:82
virtual void init()
Definition: seisstor.h:85
I/O Interpreter class for a certain object type.
Definition: transl.h:123
Data connection.
Definition: conn.h:30
Seis2DDataSet * dataSet()
Definition: seisstor.h:75
BufferString errmsg_
Definition: horizontracker.h:119
base class for seis reader and writer.
Definition: seisstor.h:33
bool isPS() const
Definition: seisstor.h:41
Seis2DDataSet * dataset_
Definition: seisstor.h:92
SeisTrcTranslator * seisTranslator()
Definition: seisstor.h:72
Seis::SelData * seldata_
Definition: seisstor.h:93
Translator * translator()
Definition: seisstor.h:64
GeomType geomTypeOf(const char *)
const SeisPSIOProvider * psioprov_
Definition: seisstor.h:94
const Seis2DDataSet * dataSet() const
Definition: seisstor.h:76
Translator * trl_
Definition: seisstor.h:91
Set of 2D lines comparable with 3D seismic cube.
Definition: seis2ddata.h:37

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