VR-Forces 4.1 Class Documentation
DtFilter.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2008 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: DtSelectionFilters.h,v $ $Revision: 1.8 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #pragma once
13 
14 #include <vrvCoreQt/vrvCoreQt.h>
15 #include <vrvCoreQt/DtPtrQList.h>
16 #include <vrvCore/DtElementEntry.h>
17 #include <QtCore/QVector>
18 #include <QtCore/QString>
19 
20 namespace makVrv
21 {
25  {
26  public:
27  DtFilter();
28  DtFilter(const QString& name);
29  DtFilter(const DtFilter& filter);
30  virtual ~DtFilter();
31 
32  virtual DtFilter* clone() const = 0;
33  virtual bool isValid(const DtElementEntry*) = 0;
34 
35  virtual const QString& name() const;
36  void setName(const QString&);
37 
40  virtual int indexOf(const DtElementEntry*) { return -1; };
41 
42  protected:
43  QString myName;
44  };
45 
49  {
50  public:
53  DtElementTypeFilter(const QString& name, const DtElementEntry::ObjectType& key);
55  virtual ~DtElementTypeFilter();
56 
57  const DtElementEntry::ObjectType& key() const;
58  void setKey(const DtElementEntry::ObjectType&);
59 
60  protected:
61  virtual DtFilter* clone() const;
62  virtual bool isValid(const DtElementEntry*);
63 
64  protected:
66  };
67 
72  {
73  public:
74  DtOrFilter();
75  DtOrFilter(const QString& name);
76  DtOrFilter(const DtOrFilter& filter);
77  virtual ~DtOrFilter();
78 
79  virtual void addFilter(const DtFilter& filter);
80 
81  void clearFilters();
82 
83  protected:
84  virtual DtFilter* clone() const;
85  virtual bool isValid(const DtElementEntry*);
86 
87  protected:
89  };
90 
95  {
96  public:
97  DtAndFilter();
98  DtAndFilter(const QString& name);
99  DtAndFilter(const DtAndFilter& filter);
100  virtual ~DtAndFilter();
101 
102  protected:
103  virtual DtFilter* clone() const;
104  virtual bool isValid(const DtElementEntry*);
105  };
106 
107  inline void DtFilter::setName(const QString& name)
108  {
109  myName = name;
110  }
111 
113  {
114  myFilters.clear();
115  }
116 }

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)