OpendTect  6.6
dztimporter.h
Go to the documentation of this file.
1 #pragma once
2 /*
3 ________________________________________________________________________
4 
5  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
6  Author: Bert
7  Date: Mar 2010
8  RCS: $Id$
9 ________________________________________________________________________
10 
11 */
12 
13 #include "executor.h"
14 #include "datainterp.h"
15 #include "linekey.h"
16 #include "samplingdata.h"
17 #include "position.h"
18 class IOObj;
19 class SeisTrc;
20 class SeisTrcInfo;
21 class SeisTrcWriter;
22 
23 
24 namespace DZT
25 {
26 
27 struct FileHeader
28 {
29  struct Date
30  {
31  unsigned sec2:5, min:6, hour:5, day:5, month:4, year:7;
32  };
33 
35 
38  inline bool isOK() const { return nsamp > 0; }
39 
40  inline int traceNr( int trcidx ) const
41  { return nrdef_.atIndex(trcidx); }
42  inline int nrBytesPerSample() const
43  { return bits / 8; }
44  inline int nrBytesPerTrace() const
45  { return nsamp * nrBytesPerSample(); }
46  void fillInfo(SeisTrcInfo&,int trcidx) const;
47 
48  unsigned short tag, data, nsamp, bits;
49  short zero;
50  float sps, spm, mpm, position, range;
52  unsigned short npass, rgain, nrgain, text, ntext, proc, nproc, nchan;
53  float epsr, top, depth;
54  char dtype, antname[14];
55  unsigned short chanmask, chksum;
56 
57  // Could these be found? Not in all files for sure ...
61 
62 };
63 
64 
65 mClass(uiImpGPR) Importer : public ::Executor
67 public:
68 
69  Importer(const char* fnm,const IOObj&,const LineKey&);
71 
72  uiString uiMessage() const { return msg_; }
73  uiString uiNrDoneText() const { return tr("Traces handled"); }
74  od_int64 nrDone() const { return nrdone_; }
75  od_int64 totalNr() const { return totalnr_; }
76 
77  int nextStep();
78 
80  float zfac_;
81 
82 protected:
83 
88 
89  char* databuf_;
91 
95 
96  int closeAll();
97 
98 };
99 
100 } // namespace DZT
101 
102 
DZT::FileHeader::Date::sec2
unsigned sec2
Definition: dztimporter.h:31
DZT::FileHeader::nsamp
unsigned short nsamp
Definition: dztimporter.h:48
DZT::FileHeader::spm
float spm
Definition: dztimporter.h:50
SeisTrcInfo
Information for a seismic trace, AKA trace header info.
Definition: seisinfo.h:27
DZT::Importer::msg_
uiString msg_
Definition: dztimporter.h:94
DZT::FileHeader::text
unsigned short text
Definition: dztimporter.h:52
DZT::FileHeader::bits
unsigned short bits
Definition: dztimporter.h:48
DZT::FileHeader::sps
float sps
Definition: dztimporter.h:50
od_int64
#define od_int64
Definition: plftypes.h:35
DZT::Importer::lk_
LineKey lk_
Definition: dztimporter.h:87
DZT::FileHeader::proc
unsigned short proc
Definition: dztimporter.h:52
DZT::Importer::di_
DataInterpreter< float > di_
Definition: dztimporter.h:90
od_istream
OD class for stream read common access to the std::cin.
Definition: od_istream.h:24
SeisTrc
Seismic trace.
Definition: seistrc.h:34
samplingdata.h
DZT::FileHeader::nproc
unsigned short nproc
Definition: dztimporter.h:52
DZT::Importer::fh_
FileHeader fh_
Definition: dztimporter.h:79
DZT::FileHeader::Date::min
unsigned min
Definition: dztimporter.h:31
DZT::FileHeader::getFrom
mDeprecatedDef bool getFrom(od_istream &, BufferString &)
DZT::Importer::istream_
od_istream & istream_
Definition: dztimporter.h:86
DZT::FileHeader::position
float position
Definition: dztimporter.h:50
datainterp.h
DZT::Importer::Importer
Importer(const char *fnm, const IOObj &, const LineKey &)
DZT::Importer::closeAll
int closeAll()
DZT::Importer::wrr_
SeisTrcWriter * wrr_
Definition: dztimporter.h:85
DZT::FileHeader::FileHeader
FileHeader()
DZT::FileHeader::dtype
char dtype
Definition: dztimporter.h:54
DataInterpreter< float >
DZT::FileHeader::Date::day
unsigned day
Definition: dztimporter.h:31
DZT::Importer::nextStep
int nextStep()
DZT::FileHeader::nrBytesPerSample
int nrBytesPerSample() const
Definition: dztimporter.h:42
DZT::FileHeader::isOK
bool isOK() const
Definition: dztimporter.h:38
Coord
A cartesian coordinate in 2D space.
Definition: coord.h:25
SamplingData::atIndex
T atIndex(IT) const
Definition: samplingdata.h:164
DZT::FileHeader::Date::hour
unsigned hour
Definition: dztimporter.h:31
DZT::FileHeader::Date
Definition: dztimporter.h:30
DZT::Importer
Definition: dztimporter.h:66
DZT::FileHeader::chanmask
unsigned short chanmask
Definition: dztimporter.h:55
DZT::FileHeader
Definition: dztimporter.h:28
DZT::Importer::zfac_
float zfac_
Definition: dztimporter.h:80
DZT::FileHeader::tag
unsigned short tag
Definition: dztimporter.h:48
DZT::FileHeader::top
float top
Definition: dztimporter.h:53
DZT::FileHeader::data
unsigned short data
Definition: dztimporter.h:48
mClass
#define mClass(module)
Definition: commondefs.h:181
DZT::Importer::uiMessage
uiString uiMessage() const
will be message() again in 7.x
Definition: dztimporter.h:72
DZT::FileHeader::cstep_
Coord cstep_
Definition: dztimporter.h:60
DZT::Importer::~Importer
~Importer()
SamplingData< int >
DZT::FileHeader::nchan
unsigned short nchan
Definition: dztimporter.h:52
DZT::Importer::trc_
SeisTrc & trc_
Definition: dztimporter.h:84
IOObj
Definition: ioobj.h:58
DZT::Importer::totalNr
od_int64 totalNr() const
Definition: dztimporter.h:75
executor.h
DZT::FileHeader::chksum
unsigned short chksum
Definition: dztimporter.h:55
DZT::Importer::nrdone_
od_int64 nrdone_
Definition: dztimporter.h:92
DZT::FileHeader::mpm
float mpm
Definition: dztimporter.h:50
DZT::Importer::nrDone
od_int64 nrDone() const
Definition: dztimporter.h:74
DZT::FileHeader::nrdef_
SamplingData< int > nrdef_
Definition: dztimporter.h:58
position.h
DZT::Importer::mODTextTranslationClass
mODTextTranslationClass(Importer)
LineKey
Key for a line in a line set.
Definition: linekey.h:22
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
DZT::FileHeader::depth
float depth
Definition: dztimporter.h:53
DZT::FileHeader::ntext
unsigned short ntext
Definition: dztimporter.h:52
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
DZT::Importer::databuf_
char * databuf_
Definition: dztimporter.h:89
DZT::FileHeader::rgain
unsigned short rgain
Definition: dztimporter.h:52
linekey.h
DZT::Importer::uiNrDoneText
uiString uiNrDoneText() const
will be nrDoneText() in 7.x
Definition: dztimporter.h:73
DZT::Importer::totalnr_
od_int64 totalnr_
Definition: dztimporter.h:93
DZT::FileHeader::cstart_
Coord cstart_
Definition: dztimporter.h:59
DZT::FileHeader::fillInfo
void fillInfo(SeisTrcInfo &, int trcidx) const
DZT::FileHeader::npass
unsigned short npass
Definition: dztimporter.h:52
DZT::FileHeader::Date::year
unsigned year
Definition: dztimporter.h:31
DZT::FileHeader::epsr
float epsr
Definition: dztimporter.h:53
DZT::FileHeader::nrgain
unsigned short nrgain
Definition: dztimporter.h:52
DZT::FileHeader::zero
short zero
Definition: dztimporter.h:49
mDeprecatedDef
#define mDeprecatedDef
Definition: plfdefs.h:216
DZT::FileHeader::traceNr
int traceNr(int trcidx) const
Definition: dztimporter.h:40
DZT::FileHeader::Date::month
unsigned month
Definition: dztimporter.h:31
SeisTrcWriter
Definition: seiswrite.h:41
DZT::FileHeader::modified
Date modified
Definition: dztimporter.h:51
DZT::FileHeader::getFrom
bool getFrom(od_istream &, uiString &)
DZT::FileHeader::range
float range
Definition: dztimporter.h:50
DZT::FileHeader::nrBytesPerTrace
int nrBytesPerTrace() const
Definition: dztimporter.h:44
DZT::FileHeader::created
Date created
Definition: dztimporter.h:51
DZT
Definition: dztimporter.h:25
DZT::FileHeader::antname
char antname[14]
Definition: dztimporter.h:54

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