OpendTect  6.6
visdataman.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: Kristofer Tingdahl
8  Date: 4-11-2002
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 
13 -*/
14 
15 #include "visbasemod.h"
16 #include "sets.h"
17 #include "factory.h"
18 #include "callback.h"
19 #include <typeinfo>
20 namespace osg { class Node; }
21 
22 namespace visBase
23 {
24 class DataObject;
25 class SelectionManager;
26 
30 {
31 public:
33  virtual ~DataManager();
34 
35  const char* errMsg() const;
36 
37  void getIDs(const std::type_info&,TypeSet<int>&) const;
38  int highestID() const;
39 
41  const DataObject* getObject(int id) const;
42  int getID(const osg::Node*) const;
44 
45  int nrObjects() const;
47  const DataObject* getIndexedObject(int idx) const;
48 
49  SelectionManager& selMan() { return selman_; }
50 
51  void fillPar(IOPar&) const;
52  //Only saves freeid_
53  bool usePar(const IOPar&);
54  //Only restores freeid_
55 
57 
59 protected:
60 
61  friend class DataObject;
64 
66 
67  int freeid_;
70 
71  static const char* sKeyFreeID();
72  static const char* sKeySelManPrefix();
73 };
74 
76 
77 };
78 
79 
visBase::DataManager::sKeyFreeID
static const char * sKeyFreeID()
visBase::DataManager
Definition: visdataman.h:30
factory.h
mGlobal
#define mGlobal(module)
Definition: commondefs.h:180
visBase::DataManager::nrObjects
int nrObjects() const
ObjectSet
Set of pointers to objects.
Definition: commontypes.h:31
visBase::DM
DataManager & DM()
visBase::DataManager::selman_
SelectionManager & selman_
Definition: visdataman.h:68
visBase
Definition: visannot.h:43
visBase::DataManager::errMsg
const char * errMsg() const
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
visBase::DataManager::freeid_
int freeid_
Definition: visdataman.h:67
visBase::DataManager::selMan
SelectionManager & selMan()
Definition: visdataman.h:49
osg
Open Scene Graph.
Definition: visannot.h:29
visBase::DataObject
DataObject is the base class off all objects that are used in Visualization and ought to be shared in...
Definition: visdata.h:63
callback.h
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
visBase::DataManager::removeallnotify
Notifier< DataManager > removeallnotify
Definition: visdataman.h:56
visBase::DataManager::highestID
int highestID() const
visBase::DataManager::~DataManager
virtual ~DataManager()
visBase::DataManager::removeObject
void removeObject(DataObject *)
visBase::DataManager::usePar
bool usePar(const IOPar &)
visBase::DataManager::objects_
ObjectSet< DataObject > objects_
Definition: visdataman.h:65
visBase::SelectionManager
SelectionManager handles DataObject that can be selected. If an object can be selected,...
Definition: visselman.h:44
visBase::DataManager::getIndexedObject
DataObject * getIndexedObject(int idx)
Notifier
Class to help setup a callback handling.
Definition: notify.h:126
visBase::DataManager::fillPar
void fillPar(IOPar &) const
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
visBase::DataManager::getID
int getID(const osg::Node *) const
Returns -1 if not found.
visBase::DataManager::errmsg_
BufferString errmsg_
Definition: visdataman.h:69
visBase::DataManager::mDefineFactoryInClass
mDefineFactoryInClass(DataObject, factory)
visBase::DataManager::DataManager
DataManager()
visBase::DataManager::sKeySelManPrefix
static const char * sKeySelManPrefix()
sets.h
visBase::DataManager::getObject
DataObject * getObject(int id)
visBase::DataManager::getIndexedObject
const DataObject * getIndexedObject(int idx) const
visBase::DataManager::getIDs
void getIDs(const std::type_info &, TypeSet< int > &) const
visBase::DataManager::getObject
const DataObject * getObject(int id) const
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
visBase::DataManager::addObject
void addObject(DataObject *)
TypeSet< int >

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