OpendTect-6_4  6.4
emstickset.h
Go to the documentation of this file.
1 #ifndef emstickset_h
2 #define emstickset_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Kristofer Tingdahl
9  Date: 4-11-2002
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 
14 -*/
15 
16 #include "earthmodelmod.h"
17 #include "emposid.h"
18 #include "emobject.h"
19 #include "sets.h"
20 #include "coord.h"
21 
22 
23 namespace EM
24 {
25 
27 typedef SubID KnotID;
28 
29 class EMManager;
30 
35 mExpClass(EarthModel) StickSet : public EMObject
36 {
37 public:
38  static const char* typeStr();
39  static EMObject* create( EMManager& );
40  static void initClass(EMManager&);
41 
42  const char* getTypeStr() const { return typeStr(); }
43 
44  int nrSections() const { return nrSticks(); }
45  EM::SectionID sectionID(int idx) const { return stickID(idx); }
46 
47  int nrSticks() const;
48  StickID stickID(int idx) const;
49  StickID addStick( bool addtohistory );
50  void removeStick(const StickID&);
51 
52  int nrKnots(const StickID&) const;
53  KnotID firstKnot(const StickID&) const;
54 
55  bool setPos( const StickID&, const KnotID&,
56  const Coord3&, bool addtohistory );
57  bool setPos(const EM::PosID&, const Coord3&, bool addtohist);
58 
59  Coord3 getPos(const EM::PosID&) const;
60  Coord3 getPos(const StickID&, const KnotID&) const;
61 
62  bool isLoaded() const;
63  Executor* saver();
64  Executor* loader();
65 
66 protected:
67  int getStickIndex(const StickID&) const;
68 
69  friend class EMManager;
70  friend class EMObject;
71 
73  ~StickSet();
74  void cleanUp();
75  virtual const IOObjContext& getIOObjContext() const;
76 
80  bool isloaded;
81 };
82 
83 } // namespace EM
84 
85 #endif
od_int16 SectionID
Definition: emposid.h:25
#define mExpClass(module)
Definition: commondefs.h:160
const char * getTypeStr() const
Definition: emstickset.h:42
Is an identifier for each position in the earthmodel.
Definition: emposid.h:37
bool isloaded
Definition: emstickset.h:80
ObjectSet< TypeSet< BinIDValue > > sticks
Definition: emstickset.h:77
EM::SectionID sectionID(int idx) const
Definition: emstickset.h:45
od_int64 SubID
Definition: emposid.h:26
Set of pointers to objects.
Definition: commontypes.h:32
Manages the loaded/half loaded EM objects in OpendTect.
Definition: emmanager.h:46
SectionID StickID
Definition: emstickset.h:26
A cartesian coordinate in 3D space.
Definition: coord.h:72
TypeSet< KnotID > firstknots
Definition: emstickset.h:79
TypeSet< StickID > stickids
Definition: emstickset.h:78
static uiHor3DInterpol * create(uiParent *)
Base class for all EarthModel objects.
Definition: emobject.h:158
Stick set.
Definition: emstickset.h:35
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:25
int nrSections() const
Definition: emstickset.h:44
IOObjContext * getIOObjContext(Seis::GeomType, bool forread)
static void initClass()
Specification to enable chunkwise execution of a process.
Definition: executor.h:39
Holds the context for selecting and/or creating IOObjs.
Definition: ctxtioobj.h:62
SubID KnotID
Definition: emstickset.h:27

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