OpendTect  6.6
displaypropertylinks.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: K. Tingdahl & N. Hemstra
8  Date: September 2008
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "generalmod.h"
15 #include "factory.h"
16 #include "namedobj.h"
17 #include "threadlock.h"
18 
21 
46 {
47 public:
51 
52  int nrHolders() const;
54  const DisplayPropertyHolder* getHolder(int) const;
55 
59 
61  int getDisplayPropertyLinkID(int idx) const;
68 
69  bool usePar(const IOPar&);
70  void fillPar(IOPar&) const;
71 
72 protected:
73 
74  friend class DisplayPropertyHolder;
76 
80 
84 };
85 
86 
87 
88 
89 
91 {
92 public:
94 
96 
97  int propertyHolderID() const;
98  virtual const char* getDisplayPropertyHolderName() const;
99 
100 private:
101  friend class DisplayLinkManager;
103 
104 };
105 
106 
108 {
109 public:
112 
113  virtual const char* type() const = 0;
114  virtual const char* userType() const;
115 
116  virtual bool init();
117  //Called when added to manager, before
118  //this call, no callbacks should be set.
119 
122  bool isValid() const;
123  virtual void getDescription(BufferString&) const;
124 
127 
128 protected:
129  friend class DisplayLinkManager;
130  virtual bool syncNow(const DisplayPropertyHolder* origin,
131  DisplayPropertyHolder* target);
132  //If Target is zero, sync all but origin
133 
134  virtual bool isHolderOK(const DisplayPropertyHolder*);
137 
139 };
140 
NamedObject
object with a name.
Definition: namedobj.h:42
DisplayLinkManager::freeholderid_
int freeholderid_
Definition: displaypropertylinks.h:78
factory.h
DisplayLinkManager
Definition: displaypropertylinks.h:46
ObjectSet< DisplayPropertyLink >
DisplayLinkManager::~DisplayLinkManager
~DisplayLinkManager()
DisplayLinkManager::getDisplayPropertyLink
const DisplayPropertyLink * getDisplayPropertyLink(int id) const
DisplayPropertyHolder::~DisplayPropertyHolder
virtual ~DisplayPropertyHolder()
DisplayLinkManager::propertylinks_
ObjectSet< DisplayPropertyLink > propertylinks_
Definition: displaypropertylinks.h:81
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
namedobj.h
DisplayLinkManager::freelinkid_
int freelinkid_
Definition: displaypropertylinks.h:83
DisplayLinkManager::nrDisplayPropertyLinks
int nrDisplayPropertyLinks() const
DisplayLinkManager::fillPar
void fillPar(IOPar &) const
DisplayPropertyHolder::propertyholderid_
int propertyholderid_
Definition: displaypropertylinks.h:102
DisplayLinkManager::lock_
Threads::Lock lock_
Definition: displaypropertylinks.h:79
DisplayLinkManager::getDisplayPropertyLinkID
int getDisplayPropertyLinkID(int idx) const
DisplayLinkManager::DisplayLinkManager
DisplayLinkManager()
DisplayLinkManager::nrHolders
int nrHolders() const
DisplayLinkManager::propertylinkids_
TypeSet< int > propertylinkids_
Definition: displaypropertylinks.h:82
DisplayLinkManager::addDisplayPropertyLink
int addDisplayPropertyLink(DisplayPropertyLink *)
DisplayPropertyHolder::propertyHolderID
int propertyHolderID() const
DisplayLinkManager::usePar
bool usePar(const IOPar &)
DisplayPropertyHolder
Definition: displaypropertylinks.h:91
DisplayLinkManager::removeDisplayPropertyLink
void removeDisplayPropertyLink(int id)
DisplayLinkManager::createPossibleLinks
void createPossibleLinks(DisplayPropertyHolder *, ObjectSet< DisplayPropertyLink > &)
DisplayPropertyLinks become yours.
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
DisplayLinkManager::holders_
ObjectSet< DisplayPropertyHolder > holders_
Definition: displaypropertylinks.h:77
DisplayLinkManager::getDisplayPropertyLink
DisplayPropertyLink * getDisplayPropertyLink(int id)
DisplayLinkManager::removeHolder
void removeHolder(DisplayPropertyHolder *)
threadlock.h
DisplayPropertyHolder::DisplayPropertyHolder
DisplayPropertyHolder(bool reg)
DisplayPropertyHolder::getDisplayPropertyHolderName
virtual const char * getDisplayPropertyHolderName() const
DisplayLinkManager::getHolder
const DisplayPropertyHolder * getHolder(int) const
Threads::Lock
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class.
Definition: threadlock.h:53
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
TypeSet< int >
DisplayLinkManager::addHolder
int addHolder(DisplayPropertyHolder *)
DisplayLinkManager::getImpl
static DisplayLinkManager & getImpl()

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