OpendTect  6.6
posvecdataset.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: Jan 2005
9  Contents: Set with data vectors on positions
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "generalmod.h"
16 #include "binidvalset.h"
17 #include "bufstringset.h"
18 #include "uistring.h"
19 
20 class DataColDef;
21 
22 
23 
33 public:
34  PosVecDataSet(const char* nm=0);
36  virtual ~PosVecDataSet();
37  PosVecDataSet& operator =(const PosVecDataSet&);
39 
40  bool isEmpty() const { return data_.isEmpty(); }
41  void setEmpty();
42  int add(DataColDef*);
43  bool insert(int idx,DataColDef*);
45  void removeColumn(int);
46  enum OvwPolicy { Keep, OvwIfUdf, Ovw };
48  enum ColMatchPol { NameExact, RefExact, NameStart, RefStart };
49  void merge(const PosVecDataSet&,OvwPolicy pol=OvwIfUdf,
50  ColMatchPol cmp=NameExact);
52 
53  BinIDValueSet& data() { return data_; }
54  const BinIDValueSet& data() const { return data_; }
55 
56  int nrCols() const { return coldefs_.size(); }
57  DataColDef& colDef( int idx ) { return *coldefs_[idx]; }
58  const DataColDef& colDef( int idx ) const { return *coldefs_[idx]; }
59  int findColDef(const DataColDef&,
60  ColMatchPol p=RefExact) const;
62 
63  const char* name() const { return name_.buf(); }
64  void setName( const char* nm ) { name_ = nm; }
65 
66  IOPar& pars() { return pars_; }
67  const IOPar& pars() const { return pars_; }
68 
69  bool getFrom(const char*,BufferString& errmsg);
70  bool getFrom(const char*,uiString& errmsg);
71  bool putTo(const char*,BufferString& errmsg,
72  bool tabstyle) const;
73  bool putTo(const char*,uiString& errmsg,bool tabstyle) const;
76  static bool getColNames(const char*,BufferStringSet& bss,
77  BufferString& errmsg,bool refs=false);
78  static bool getIOPar(const char*,IOPar& iop,BufferString& errmsg);
79 
80 protected:
81 
86 
88  friend class DataPointSet;
89 
90 };
91 
92 #define mPosVecDataSetFileType "Positioned Vector Data"
93 
94 
PosVecDataSet::pars
const IOPar & pars() const
Definition: posvecdataset.h:67
binidvalset.h
PosVecDataSet::PosVecDataSet
PosVecDataSet(const char *nm=0)
PosVecDataSet::putTo
bool putTo(const char *, uiString &errmsg, bool tabstyle) const
uistring.h
ObjectSet< DataColDef >
BinIDValueSet
A Pos::IdxPairValueSet with BinIDs.
Definition: binidvalset.h:23
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
PosVecDataSet::putTo
bool putTo(const char *, BufferString &errmsg, bool tabstyle) const
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
PosVecDataSet
Data set consisting of data vectors.
Definition: posvecdataset.h:32
PosVecDataSet::removeColumn
void removeColumn(int)
"Z" col (idx=0) can't be removed
PosVecDataSet::data
const BinIDValueSet & data() const
Definition: posvecdataset.h:54
PosVecDataSet::merge
void merge(const PosVecDataSet &, OvwPolicy pol=OvwIfUdf, ColMatchPol cmp=NameExact)
This is a rather intelligent method.
PosVecDataSet::mODTextTranslationClass
mODTextTranslationClass(PosVecDataSet)
DataPointSet
Set of data points with group selection.
Definition: datapointset.h:48
PosVecDataSet::~PosVecDataSet
virtual ~PosVecDataSet()
PosVecDataSet::add
int add(DataColDef *)
PosVecDataSet::getIOPar
static bool getIOPar(const char *, IOPar &iop, BufferString &errmsg)
PosVecDataSet::name_
BufferString name_
Definition: posvecdataset.h:84
OD::String::buf
const char * buf() const
Definition: odstring.h:46
PosVecDataSet::getFrom
bool getFrom(const char *, BufferString &errmsg)
PosVecDataSet::ColMatchPol
ColMatchPol
Definition: posvecdataset.h:48
PosVecDataSet::setName
void setName(const char *nm)
Definition: posvecdataset.h:64
PosVecDataSet::findColDef
int findColDef(const DataColDef &, ColMatchPol p=RefExact) const
returns -1 if no match
PosVecDataSet::name
const char * name() const
Definition: posvecdataset.h:63
PosVecDataSet::colDef
const DataColDef & colDef(int idx) const
Definition: posvecdataset.h:58
PosVecDataSet::getColNames
static bool getColNames(const char *, BufferStringSet &bss, BufferString &errmsg, bool refs=false)
PosVecDataSet::getFrom
bool getFrom(const char *, uiString &errmsg)
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
bufstringset.h
PosVecDataSet::setEmpty
void setEmpty()
PosVecDataSet::OvwPolicy
OvwPolicy
Definition: posvecdataset.h:46
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
PosVecDataSet::data_
BinIDValueSet data_
Definition: posvecdataset.h:82
PosVecDataSet::insert
bool insert(int idx, DataColDef *)
PosVecDataSet::coldefs_
ObjectSet< DataColDef > coldefs_
Definition: posvecdataset.h:83
PosVecDataSet::pars
IOPar & pars()
Definition: posvecdataset.h:66
PosVecDataSet::data
BinIDValueSet & data()
Definition: posvecdataset.h:53
PosVecDataSet::colDef
DataColDef & colDef(int idx)
Definition: posvecdataset.h:57
PosVecDataSet::pars_
IOPar & pars_
Definition: posvecdataset.h:85
PosVecDataSet::nrCols
int nrCols() const
Definition: posvecdataset.h:56
DataColDef::name_
BufferString name_
Definition: datacoldef.h:39
PosVecDataSet::copyStructureFrom
void copyStructureFrom(const PosVecDataSet &)
PosVecDataSet::PosVecDataSet
PosVecDataSet(const PosVecDataSet &)
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
PosVecDataSet::mergeColDefs
void mergeColDefs(const PosVecDataSet &, ColMatchPol, int *)
PosVecDataSet::isEmpty
bool isEmpty() const
Definition: posvecdataset.h:40
DataColDef
Column definition in tabular data sets.
Definition: datacoldef.h:29

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