WebLVC 1.8 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
filterManager.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2015 MAK Technologies, Inc.
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, bool filterPublishedObjects = false ) 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 }
std::map< LatLonPair, DtVector > FilterLocationMap
Definition: filterManager.h:114
A class to initialize DtBroker instances.
Definition: brokerInitializer.h:35
Contains the DtObjectFilter class declaration.
Stores the type and filter string for an individual filter.
Definition: objectFilter.h:20
std::set< DtString > FilterSet
Set type for storing unique filters.
Definition: filterManager.h:39
Stores the filtering parameters for a geospatial location filter.
Definition: geoLocationFilter.h:21
#define DT_DLL_BROKER
Definition: include/broker/dllExport.h:20
FilterRegExpMap myRegExps
Definition: filterManager.h:111
std::map< DtString, QRegExp * > FilterRegExpMap
Definition: filterManager.h:110
DtBrokerInitializer * myInitializer
Definition: filterManager.h:117
std::vector< DtString > FilterList
Vector type for storing filters.
Definition: filterManager.h:36
Provides object filtering.
Definition: filterManager.h:31
std::pair< double, double > LatLonPair
Definition: filterManager.h:113
FilterLocationMap myFilterLocations
Definition: filterManager.h:115

Document ID: Generated on Wed Mar 12 15:05:17 EDT 2025 from SVN revision 274272
Copyright © 2005-2025 MAK Technologies. All Rights Reserved (www.mak.com)