Home · Modules · All Classes · All Namespaces
filter.h
1 
23 #ifndef _TelepathyQt_filter_h_HEADER_GUARD_
24 #define _TelepathyQt_filter_h_HEADER_GUARD_
25 
26 #ifndef IN_TP_QT_HEADER
27 #error IN_TP_QT_HEADER
28 #endif
29 
30 #include <TelepathyQt/SharedPtr>
31 #include <TelepathyQt/Types>
32 
33 namespace Tp
34 {
35 
36 template <class T>
37 class Filter : public RefCounted
38 {
39  Q_DISABLE_COPY(Filter)
40 
41 public:
42  virtual ~Filter() {}
43 
44  virtual bool isValid() const { return false; }
45 
46  virtual bool matches(const SharedPtr<T> &t) const
47  {
48  Q_UNUSED(t);
49 
50  return false;
51  }
52 
53 protected:
54  Filter() {}
55 
56 private:
57  struct Private;
58  Private *mPriv; // Just a placeholder really
59 };
60 
61 } // Tp
62 
63 #endif
The SharedPtr class is a pointer to an explicitly shared object.
Definition: shared-ptr.h:39
The RefCounted class is a base class for shared objects used by SharedPtr.
Definition: shared-ptr.h:42
virtual ~Filter()
Definition: filter.h:42
virtual bool isValid() const
Definition: filter.h:44
Filter()
Definition: filter.h:54
The Filter class provides a base class to be used by specialized filters such as GenericCapabilityFil...
Definition: filter.h:37
Definition: abstract-adaptor.cpp:31
virtual bool matches(const SharedPtr< T > &t) const
Definition: filter.h:46