OpendTect-6_4  6.4
odqtobjset.h
Go to the documentation of this file.
1 #ifndef odqtobjset_h
2 #define odqtobjset_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Nanne Hemstra
9  Date: April 2008
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 
16 #include "sets.h"
17 
18 
19 template<class OD,class QT>
21 {
22 public:
24 
25  int size() const { return odobjs_.size(); }
26 
27  void add(OD*,QT*);
28  void remove(const OD&);
29 
30  OD* getODObject(const QT&);
31  QT* getQtObject(const OD&);
32 
33  OD* getODObject(int idx);
34  QT* getQtObject(int idx);
35 
36 protected:
37 
40 };
41 
42 
43 template<class OD,class QT>
44 void ODQtObjectSet<OD,QT>::add( OD* odobj, QT* qtobj )
45 {
46  odobjs_ += odobj;
47  qtobjs_ += qtobj;
48 }
49 
50 
51 template<class OD,class QT>
52 void ODQtObjectSet<OD,QT>::remove( const OD& obj )
53 {
54  const int idx = odobjs_.indexOf( &obj );
55  if ( idx<0 ) return;
56 
57  odobjs_.removeSingle( idx );
58  qtobjs_.removeSingle( idx );
59 }
60 
61 
62 template<class OD,class QT>
64 {
65  const int idx = qtobjs_.indexOf( &qtobj );
66  return idx<0 ? 0 : odobjs_[idx];
67 }
68 
69 
70 template<class OD,class QT>
72 {
73  const int idx = odobjs_.indexOf( &obj );
74  return idx<0 ? 0 : qtobjs_[idx];
75 }
76 
77 
78 template<class OD,class QT>
80 {
81  return odobjs_.validIdx(idx) ? odobjs_[idx] : 0;
82 }
83 
84 
85 template<class OD,class QT>
87 {
88  return qtobjs_.validIdx(idx) ? qtobjs_[idx] : 0;
89 }
90 
91 
92 #endif
ODQtObjectSet()
Definition: odqtobjset.h:23
OD * getODObject(const QT &)
Definition: odqtobjset.h:63
QT * getQtObject(const OD &)
Definition: odqtobjset.h:71
ObjectSet< QT > qtobjs_
Definition: odqtobjset.h:39
void remove(const OD &)
Definition: odqtobjset.h:52
int size() const
Definition: odqtobjset.h:25
ObjectSet< OD > odobjs_
Definition: odqtobjset.h:38
Definition: odqtobjset.h:20
OpendTect.
Definition: commontypes.h:29
#define mClass(module)
Definition: commondefs.h:164
void add(OD *, QT *)
Definition: odqtobjset.h:44

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