OpendTect  6.3
emfaultauxdata.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: Yuancheng Liu
8  Date: 08-01-2012
9 ________________________________________________________________________
10 
11 
12 -*/
13 
14 #include "earthmodelmod.h"
15 
16 #include "bufstringset.h"
17 #include "odmemory.h"
18 
19 template <class T> class Array2D;
20 
21 
22 namespace EM
23 {
24 
25 class Fault3D;
26 
32 { mODTextTranslationClass(FaultAuxData);
33 public:
34  FaultAuxData(const Fault3D&);
35  FaultAuxData(const DBKey&);
36  ~FaultAuxData();
37 
38  bool init();
39  int setData(const char* sdname,const Array2D<float>* data,
41  void setData(int sdidx,const Array2D<float>*,
43  const Array2D<float>* loadIfNotLoaded(const char* sdname);
44  const Array2D<float>* loadIfNotLoaded(int sdidx);
45  int dataIndex(const char* sdname) const;
46 
47  void setSelected(const TypeSet<int>& sl);
48  const TypeSet<int>& selectedIndices() const { return selected_; }
49  const BufferStringSet& selectedNames() const { return selattribnames_; }
50 
51  bool storeData(int sdidx,bool binary);
52 
53  void setDataName(int sdidx,const char* newname);
54  void setDataName(const char* oldname,const char* newname);
55  void removeData(const char* sdname);
56  void removeData(int sdidx);
57  void removeAllData();
58  void renameFault(const char* fltnewname);
59 
60  void getAuxDataList(BufferStringSet&) const;
61  uiString errMsg() const { return errmsg_; }
62 
63 protected:
64 
65  const char* sKeyFaultAuxData() { return "Fault Aux Data"; }
66  const char* sKeyExtension() { return "auxinfo"; }
67 
68  bool loadData(int sdidx);
69  enum Action { Remove=0, SetName=1 };
70  void updateDataFiles(Action,int idx,const char* newnme=0);
71  void readSDInfoFile(ObjectSet<IOPar>&);
72  BufferString createFltDataName(const char* base,int sdidx);
73 
74  const DBKey& faultmid_;
77 
78  struct DataInfo
79  {
80  DataInfo();
81  ~DataInfo();
82  bool operator==(const DataInfo&);
83 
88  };
89 
93 };
94 
95 
96 } // namespace EM
#define mExpClass(module)
Definition: commondefs.h:157
const Array2D< float > * data
Definition: emfaultauxdata.h:86
bool operator==(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:51
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
OD::PtrPolicy policy
Definition: emfaultauxdata.h:87
bool init()
BufferStringSet selattribnames_
Definition: emfaultauxdata.h:92
const DBKey & faultmid_
Definition: emfaultauxdata.h:74
Definition: uistring.h:88
Set of BufferString objects.
Definition: bufstringset.h:25
Action
Definition: emfaultauxdata.h:69
TypeSet< int > selected_
Definition: emfaultauxdata.h:91
Array2D ( Subclass of ArrayND ) is a two dimensional array.
Definition: arraynd.h:127
const TypeSet< int > & selectedIndices() const
Definition: emfaultauxdata.h:48
Definition: emfaultauxdata.h:78
Fault surface data.
Definition: emfaultauxdata.h:31
const char * sKeyFaultAuxData()
Definition: emfaultauxdata.h:65
BufferString filename
Definition: emfaultauxdata.h:85
BufferString username
Definition: emfaultauxdata.h:84
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
BufferString errmsg_
Definition: horizontracker.h:117
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:23
PtrPolicy
Definition: odmemory.h:20
Definition: oduicommon.h:73
3D Fault
Definition: emfault3d.h:76
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
const BufferStringSet & selectedNames() const
Definition: emfaultauxdata.h:49
uiString errmsg_
Definition: emfaultauxdata.h:76
ObjectSet< DataInfo > dataset_
Definition: emfaultauxdata.h:90
uiString errMsg() const
Definition: emfaultauxdata.h:61
BufferString fltfullnm_
Definition: emfaultauxdata.h:75
const char * sKeyExtension()
Definition: emfaultauxdata.h:66

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