OpendTect  6.6
uiattrsel.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: April 2001
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "uiattributesmod.h"
15 #include "uidialog.h"
16 #include "uiiosel.h"
17 #include "attribdescid.h"
18 #include "datapack.h"
19 #include "survgeom.h"
20 
21 namespace Attrib { class Desc; class DescSet; class SelInfo; class SelSpec; }
22 namespace ZDomain { class Info; }
23 
24 class IOObj;
25 class NLAModel;
26 class TrcKeyZSampling;
27 class uiButtonGroup;
28 class uiGenInput;
29 class uiIOObjInserter;
30 class uiListBox;
31 class uiLabeledComboBox;
32 class uiRadioButton;
33 
38 mExpClass(uiAttributes) uiAttrSelData
40 public:
41 
42  uiAttrSelData(bool is2d,bool fillwithdef=true);
44  bool fillwithdef=true);
45 
48  int outputnr_;
49  int compnr_;
51 
52  bool is2D() const;
53  const Attrib::DescSet& attrSet() const { return *attrset_; }
54  void setAttrSet( const Attrib::DescSet* ds )
55  { if ( ds ) attrset_ = ds; }
57 
58 protected:
59 
61 
62 };
63 
64 
76 mExpClass(uiAttributes) uiAttrSelDlg : public uiDialog
78 public:
79 
80  mExpClass(uiAttributes) Setup
81  {
82  public:
83  Setup( const uiString& txt )
84  : seltxt_(txt)
85  , ignoreid_(Attrib::DescID::undef())
86  , isinp4otherattrib_(false)
87  , showsteeringdata_(false)
88  , geomid_(mUdfGeomID)
89  {}
90 
91  mDefSetupMemb(uiString,seltxt)
93  mDefSetupMemb(bool,isinp4otherattrib)
94  mDefSetupMemb(bool,showsteeringdata)
96  };
97 
99  const Setup&);
102  const Setup&);
104 
105  // if ( go() ) ...
106  Attrib::DescID attribID() const { return attrdata_.attribid_; }
108  int outputNr() const { return attrdata_.outputnr_; }
110  int compNr() const { return attrdata_.compnr_; }
112  const char* zDomainKey() const;
113 
114  bool is2D() const { return attrdata_.is2D(); }
115  const Attrib::DescSet& getAttrSet() const { return attrdata_.attrSet(); }
116  int selType() const;
118 
119 protected:
120 
123  bool usedasinput_; //input for another attribute
128 
131 
138 
147 
150 
154 
155  bool getAttrData(bool);
162  virtual bool acceptOK(CallBacker*);
163 };
164 
165 
173 mExpClass(uiAttributes) uiAttrSel : public uiIOSelect
175 public:
177  const char* txt=0,
179  bool isinp4otherattrib = true);
180  uiAttrSel(uiParent*,const char*,const uiAttrSelData&,
181  bool isinp4otherattrib = true);
183 
184  Attrib::DescID attribID() const { return attrdata_.attribid_; }
185  int outputNr() const { return attrdata_.outputnr_; }
186  int compNr() const { return attrdata_.compnr_; }
187  inline bool is2D() const { return attrdata_.is2D(); }
188  inline bool is3D() const { return !is2D(); }
189 
192  void setDesc(const Attrib::Desc*);
196  void setNLAModel(const NLAModel*);
197 
199  void setIgnoreID( Attrib::DescID id ) { ignoreid_ = id; }
201  void showSteeringData( bool yn ) { showsteeringdata_=yn;}
202  void setGeomID( Pos::GeomID id ) { geomid_ = id; }
203  Pos::GeomID getGeomID() const { return geomid_; }
204 
205  virtual void getHistory(const IOPar&);
206  virtual void processInput();
207 
208  const char* errMsg() { return errmsg_.str(); }
211 
213  bool checkOutput(const IOObj&) const;
214  const char* getAttrName() const;
215 
216  void setObjectName(const char*);
217  const Attrib::DescSet& getAttrSet() const { return attrdata_.attrSet(); }
218 
219 protected:
220 
222  bool is2d_;
224  bool usedasinput_; //input for another attribute
227  int seltype_;
230 
232 
233  void updateInput();
234  void update2D();
236  virtual const char* userNameFromKey(const char*) const;
237 
238  static uiString cDefLabel();
239 };
240 
241 
247 mExpClass(uiAttributes) uiImagAttrSel : public uiAttrSel
249 public:
250  uiImagAttrSel( uiParent* p, const char* txt,
251  const uiAttrSelData& asd )
252  : uiAttrSel(p,txt,asd) {}
253 
254  inline Attrib::DescID realID() const { return attribID(); }
256 
257 };
258 
259 
Attrib::DescID
AttribDesc ID: each Desc has a unique ID in a set; the boolean isstored allows us to know whether thi...
Definition: attribdescid.h:27
ZDomain
Definition: zdomain.h:20
ZDomain::Info
Information of z-domain.
Definition: zdomain.h:93
uiAttrSel::getAttrSet
const Attrib::DescSet & getAttrSet() const
Definition: uiattrsel.h:217
uiAttrSel::showsteeringdata_
bool showsteeringdata_
Definition: uiattrsel.h:228
uiAttrSel::cDefLabel
static uiString cDefLabel()
uiAttrSelData::fillSelSpec
void fillSelSpec(Attrib::SelSpec &) const
uiImagAttrSel
User interface element for getting attribute with both real and imaginary part.
Definition: uiattrsel.h:248
uiAttrSel::attribID
Attrib::DescID attribID() const
Definition: uiattrsel.h:184
Attrib::DescID::undef
static DescID undef()
Definition: attribdescid.h:57
uiAttrSelDlg::nlafld_
uiRadioButton * nlafld_
Definition: uiattrsel.h:136
uiAttrSelDlg::usedasinput_
bool usedasinput_
Definition: uiattrsel.h:123
uiAttrSel::is2d_
bool is2d_
Definition: uiattrsel.h:222
uiAttrSel::setSelSpec
void setSelSpec(const Attrib::SelSpec *)
uiAttrSel::is3D
bool is3D() const
Definition: uiattrsel.h:188
uiAttrSelDlg::objInserted
void objInserted(CallBacker *)
uiAttrSelData::is2D
bool is2D() const
uiAttrSel::getHistory
virtual void getHistory(const IOPar &)
uiAttrSel::doSel
void doSel(CallBacker *)
uiAttrSel::setIgnoreID
void setIgnoreID(Attrib::DescID id)
Definition: uiattrsel.h:199
ObjectSet< uiIOObjInserter >
uiAttrSelDlg::getAttrSet
const Attrib::DescSet & getAttrSet() const
Definition: uiattrsel.h:115
mUdfGeomID
#define mUdfGeomID
Definition: survgeom.h:228
uiAttrSelDlg::dpfids_
TypeSet< DataPack::FullID > dpfids_
Definition: uiattrsel.h:129
uiAttrSel::uiAttrSel
uiAttrSel(uiParent *, const Attrib::DescSet &, const char *txt=0, Attrib::DescID curid=Attrib::DescID::undef(), bool isinp4otherattrib=true)
uiAttrSelDlg::uiAttrSelDlg
uiAttrSelDlg(uiParent *, const uiAttrSelData &, const Setup &)
uiAttrSel::attrdata_
uiAttrSelData attrdata_
Definition: uiattrsel.h:221
uiAttrSelDlg::storfld_
uiRadioButton * storfld_
Definition: uiattrsel.h:133
uiAttrSelDlg::nlaoutfld_
uiListBox * nlaoutfld_
Definition: uiattrsel.h:142
uiAttrSelDlg::attr2dfld_
uiGenInput * attr2dfld_
Definition: uiattrsel.h:145
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
uiiosel.h
uiAttrSel::getGeomID
Pos::GeomID getGeomID() const
Definition: uiattrsel.h:203
uiAttrSel::fillSelSpec
void fillSelSpec(Attrib::SelSpec &) const
uiAttrSel::setObjectName
void setObjectName(const char *)
uiAttrSelData
User interface for attribute selection data.
Definition: uiattrsel.h:39
uiAttrSelData::attrset_
const Attrib::DescSet * attrset_
Definition: uiattrsel.h:60
mDefSetupMemb
#define mDefSetupMemb(typ, memb)
Definition: commondefs.h:154
uiAttrSel::showSteeringData
void showSteeringData(bool yn)
Definition: uiattrsel.h:201
uiAttrSel::setDesc
void setDesc(const Attrib::Desc *)
uiAttrSelData::compnr_
int compnr_
Definition: uiattrsel.h:49
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
uiAttrSel::outputNr
int outputNr() const
Definition: uiattrsel.h:185
uiAttrSel::compNr
int compNr() const
Definition: uiattrsel.h:186
uiAttrSelDlg::mODTextTranslationClass
mODTextTranslationClass(uiAttrSelDlg)
uiAttrSelDlg::is2D
bool is2D() const
Definition: uiattrsel.h:114
uiAttrSelDlg::zdomoutfld_
uiListBox * zdomoutfld_
Definition: uiattrsel.h:143
TrcKeyZSampling
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
uiAttrSelData::setAttrSet
void setAttrSet(const Attrib::DescSet *ds)
Definition: uiattrsel.h:54
uiAttrSel::dpfids_
TypeSet< DataPack::FullID > dpfids_
Definition: uiattrsel.h:231
uiGenInput
General Input Element.
Definition: uigeninput.h:59
uiAttrSelDlg::Setup
Definition: uiattrsel.h:81
uiImagAttrSel::mODTextTranslationClass
mODTextTranslationClass(uiImagAttrSel)
uiAttrSelDlg::attrinf_
Attrib::SelInfo * attrinf_
Definition: uiattrsel.h:122
Attrib::SelInfo
Supplies lists of available attribute input.
Definition: attribsel.h:150
uiAttrSel::ignoreid_
Attrib::DescID ignoreid_
Definition: uiattrsel.h:223
uiAttrSelDlg::compfld_
uiLabeledComboBox * compfld_
Definition: uiattrsel.h:146
uiAttrSelData::mODTextTranslationClass
mODTextTranslationClass(uiAttrSelData)
uiAttrSel::uiAttrSel
uiAttrSel(uiParent *, const char *, const uiAttrSelData &, bool isinp4otherattrib=true)
uiAttrSelDlg::showsteerdata_
bool showsteerdata_
Definition: uiattrsel.h:125
uiAttrSel::update2D
void update2D()
uiAttrSelData::zdomaininfo_
const ZDomain::Info * zdomaininfo_
Definition: uiattrsel.h:50
uiAttrSelDlg::doFinalise
void doFinalise(CallBacker *)
OD::String::str
const char * str() const
Definition: odstring.h:47
uiAttrSelDlg::selgrp_
uiButtonGroup * selgrp_
Definition: uiattrsel.h:132
uiIOSelect
UI element for selection of data objects.
Definition: uiiosel.h:30
uiAttrSelDlg::attrdata_
uiAttrSelData attrdata_
Definition: uiattrsel.h:121
uiRadioButton::txt
const char * txt
Definition: uibutton.h:157
uiLabeledComboBox
Definition: uicombobox.h:145
uiAttrSelDlg::geomid_
Pos::GeomID geomid_
Definition: uiattrsel.h:127
uiImagAttrSel::uiImagAttrSel
uiImagAttrSel(uiParent *p, const char *txt, const uiAttrSelData &asd)
Definition: uiattrsel.h:250
uiAttrSelDlg::initAndBuild
void initAndBuild(const uiString &, Attrib::DescID, bool)
uiAttrSelDlg::selDone
void selDone(CallBacker *)
uiListBox
List Box.
Definition: uilistbox.h:75
uiAttrSelData::attribid_
Attrib::DescID attribid_
Definition: uiattrsel.h:46
uiAttrSelData::uiAttrSelData
uiAttrSelData(const Attrib::DescSet &, bool fillwithdef=true)
uiAttrSelData::nlamodel_
const NLAModel * nlamodel_
Definition: uiattrsel.h:47
uiAttrSel::checkOutput
bool checkOutput(const IOObj &) const
uiAttrSelDlg::replaceStoredByInMem
void replaceStoredByInMem()
uiAttrSel::setGeomID
void setGeomID(Pos::GeomID id)
Definition: uiattrsel.h:202
IOObj
Definition: ioobj.h:58
uiAttrSelDlg::attribID
Attrib::DescID attribID() const
-1 if not selected
Definition: uiattrsel.h:106
uiAttrSelDlg::compNr
int compNr() const
-1 if not selected
Definition: uiattrsel.h:110
uidialog.h
uiAttrSel::mODTextTranslationClass
mODTextTranslationClass(uiAttrSel)
uiAttrSelDlg::filtfld_
uiGenInput * filtfld_
Definition: uiattrsel.h:144
NLAModel
Minimum Interface for NLA models.
Definition: nlamodel.h:20
uiAttrSel
User interface element for storing attribute desc selection.
Definition: uiattrsel.h:174
uiAttrSelDlg::filtChg
void filtChg(CallBacker *)
uiAttrSel::getAttrName
const char * getAttrName() const
uiAttrSel::processInput
virtual void processInput()
datapack.h
uiAttrSel::errMsg
const char * errMsg()
Definition: uiattrsel.h:208
uiAttrSelDlg::selType
int selType() const
MultiID
Compound key consisting of ints.
Definition: multiid.h:24
uiAttrSelDlg::createSelectionFields
void createSelectionFields()
uiAttrSelDlg::extselbuts_
ObjectSet< uiButton > extselbuts_
Definition: uiattrsel.h:149
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
uiIOObjInserter
inserts a new object into the OD data store.
Definition: uiioobjinserter.h:31
uiAttrSel::setDescSet
void setDescSet(const Attrib::DescSet *)
This function has to be called before getHistory !
uiAttrSelDlg::acceptOK
virtual bool acceptOK(CallBacker *)
confirm accept
uiAttrSelDlg::zDomainKey
const char * zDomainKey() const
uiAttrSelDlg::uiAttrSelDlg
uiAttrSelDlg(uiParent *, const uiAttrSelData &, const TypeSet< DataPack::FullID > &, const Setup &)
attribdescid.h
uiAttrSel::setNLAModel
void setNLAModel(const NLAModel *)
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
uiAttrSelData::outputnr_
int outputnr_
Definition: uiattrsel.h:48
uiAttrSelDlg::getAttrData
bool getAttrData(bool)
uiAttrSelDlg::steerfld_
uiRadioButton * steerfld_
Definition: uiattrsel.h:134
uiAttrSel::userNameFromKey
virtual const char * userNameFromKey(const char *) const
uiAttrSel::getRanges
bool getRanges(TrcKeyZSampling &) const
Tries to determine ranges of currently selected.
uiRadioButton
Definition: uibutton.h:138
MPE::errmsg_
BufferString errmsg_
Definition: horizontracker.h:118
uiAttrSelDlg::createSelectionButtons
void createSelectionButtons()
uiAttrSel::seltype_
int seltype_
Definition: uiattrsel.h:227
uiAttrSelDlg::insertedobjmid_
MultiID insertedobjmid_
Definition: uiattrsel.h:130
uiAttrSelDlg
User Interface (UI) element for selection of Attributes from an attribute set.
Definition: uiattrsel.h:77
uiAttrSel::usrnm_
BufferString usrnm_
Definition: uiattrsel.h:226
uiAttrSelDlg::steeroutfld_
uiListBox * steeroutfld_
Definition: uiattrsel.h:140
uiAttrSelDlg::outputNr
int outputNr() const
-1 if not selected
Definition: uiattrsel.h:108
uiAttrSelDlg::attroutfld_
uiListBox * attroutfld_
Definition: uiattrsel.h:141
uiAttrSelDlg::attrfld_
uiRadioButton * attrfld_
Definition: uiattrsel.h:135
Pick::is2D
bool is2D(const PicksType &picks)
ObjectSet of Pick::Location's. Does not manage.
Definition: pickset.h:163
uiAttrSel::usedasinput_
bool usedasinput_
Definition: uiattrsel.h:224
uiParent
Definition: uiparent.h:26
uiAttrSelDlg::storoutfld_
uiListBox * storoutfld_
Definition: uiattrsel.h:139
uiAttrSelDlg::Setup::Setup
Setup(const uiString &txt)
Definition: uiattrsel.h:83
uiAttrSelData::attrSet
const Attrib::DescSet & attrSet() const
Definition: uiattrsel.h:53
uiAttrSelDlg::inserters_
ObjectSet< uiIOObjInserter > inserters_
Definition: uiattrsel.h:148
uiAttrSel::~uiAttrSel
~uiAttrSel()
Definition: uiattrsel.h:182
uiAttrSelDlg::zdomainfld_
uiRadioButton * zdomainfld_
Definition: uiattrsel.h:137
uiImagAttrSel::realID
Attrib::DescID realID() const
Definition: uiattrsel.h:254
uiButtonGroup
Definition: uibuttongroup.h:30
uiAttrSel::updateInput
void updateInput()
survgeom.h
Attrib::DescSet
Set of attribute descriptions.
Definition: attribdescset.h:35
uiAttrSelDlg::zdomainkey_
BufferString zdomainkey_
Definition: uiattrsel.h:126
Attrib
Semblance Attribute.
Definition: attribdataholder.h:25
uiDialog
Definition: uidialog.h:42
uiImagAttrSel::imagID
Attrib::DescID imagID() const
uiAttrSelDlg::fillSelSpec
void fillSelSpec(Attrib::SelSpec &) const
Attrib::SelSpec
Specifies an attribute selection (ID or output number of NN).
Definition: attribsel.h:45
Attrib::Desc
Description of an attribute in an Attrib::DescSet. Each attribute has a name (e.g....
Definition: attribdesc.h:89
uiAttrSelData::uiAttrSelData
uiAttrSelData(bool is2d, bool fillwithdef=true)
uiAttrSelDlg::in_action_
bool in_action_
Definition: uiattrsel.h:124
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
uiAttrSel::geomid_
Pos::GeomID geomid_
Definition: uiattrsel.h:229
uiAttrSel::setIgnoreDesc
void setIgnoreDesc(const Attrib::Desc *)
uiAttrSelDlg::cubeSel
void cubeSel(CallBacker *)
sKey::Desc
FixedString Desc()
Definition: keystrs.h:62
uiAttrSel::errmsg_
BufferString errmsg_
Definition: uiattrsel.h:225
Pos::GeomID
Index_Type GeomID
Definition: commontypes.h:87
uiAttrSelDlg::~uiAttrSelDlg
~uiAttrSelDlg()
uiAttrSel::setPossibleDataPacks
void setPossibleDataPacks(const TypeSet< DataPack::FullID > &)
TypeSet
Sets of (small) copyable elements.
Definition: commontypes.h:29
uiAttrSel::is2D
bool is2D() const
Definition: uiattrsel.h:187

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