VR-Exchange 2.5 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
filterManager.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2015 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <broker/dllExport.h>
13 #include <mtl/configVariable.h>
14 #include <vlpi/entityType.h>
15 #include <broker/objectFilter.h>
16 
17 #include <vector>
18 #include <set>
19 
20 class QRegExp;
21 class DtEntityType;
22 
23 namespace MAKVrExchange
24 {
25 
26  class DtBrokerInitializer;
27  class DtGeoLocationFilter;
28 
32  {
33  public:
34 
36  typedef std::vector<DtString> FilterList;
37 
39  typedef std::set<DtString> FilterSet;
40 
41  public:
42 
45 
47  virtual ~DtFilterManager();
48 
50  virtual void initialize( DtBrokerInitializer* init );
51 
53  virtual void reinitialize();
54 
58 
59  virtual void addObjectFilter( const DtObjectFilter& filter );
60  virtual void deleteObjectFilter( const DtObjectFilter& filter );
61 
63 
67  virtual bool isNameFiltered( const DtString& objectId ) const;
68 
72  virtual bool isTypeFiltered( const DtEntityType& objectType ) const;
73 
77  virtual bool isMarkingTextFiltered( const DtString& markingText ) const;
78 
82  virtual bool isLocationFiltered( const DtVector& location ) const;
83 
84  protected:
85 
86  virtual const QRegExp& getRegExp( const DtString& filter ) const;
87 
88  virtual DtVector getGeocLocation( const DtGeoLocationFilter& filter ) const;
89 
90  private:
91 
95 
98  DtFilterManager& operator = ( const DtFilterManager& );
99 
102  bool operator == ( const DtFilterManager& );
103 
106  bool operator != ( const DtFilterManager& );
107 
108  protected:
109 
110  typedef std::map<DtString,QRegExp*> FilterRegExpMap;
112 
113  typedef std::pair<double,double> LatLonPair;
114  typedef std::map<LatLonPair,DtVector> FilterLocationMap;
116 
118 
119  };
120 
121 }

Document ID: Generated on Wed Dec 21 15:05:11 EST 2016 from SVN revision 171891
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)