Lumiera  0.pre.03
»edit your freedom«
DiscoveryQuery< MO > Class Template Referenceabstract

#include "steam/mobject/session/scope-query.hpp"

Description

template<class MO>
class steam::mobject::session::DiscoveryQuery< MO >

ABC to build Queries for placement-attached objects.

The Placements obtained from such a query are typed to the specific MObject type given as template parameter. To ensure this, an additional ContentFilter is applied on the yielded results; this filter function is constructed by a virtual call when actually issuing the query.

Definition at line 65 of file scope-query.hpp.

Public Types

typedef function< bool(PlacementMO const &)> ContentFilter
 
typedef _Query::iterator iterator
 
- Public Types inherited from Query< RES >
typedef lib::IterAdapter< Cursor, PResoiterator
 
- Public Types inherited from Goal
enum  Kind {
  EMPTY = 0,
  GENERIC = 1,
  DISCOVERY,
  PLACEMENT
}
 

Public Member Functions

ContentFilter contentFilter () const
 
- Public Member Functions inherited from Query< RES >
 Query (string querySpec)
 
string extractID (Symbol predicate) const
 convenience shortcut to extract a desired name-ID. More...
 
 operator QueryKey () const
 automatic conversion from Query to QueryKey for indexing and ordering. More...
 
iterator operator() (QueryResolver const &resolver) const
 notational convenience shortcut, synonymous to Query<RES>::resolveBy()
 
Builder rebuild () const
 
iterator resolveBy (QueryResolver const &resolver) const
 
bool usesPredicate (Symbol predicate) const
 
- Public Member Functions inherited from Goal
virtual ~Goal ()
 this is a marker baseclass
 
QueryID const & getQID () const
 

Protected Member Functions

virtual ContentFilter buildContentFilter () const =0
 yield additional filter to be applied to the result set. More...
 
- Protected Member Functions inherited from Query< RES >
 Query (QueryID typeID, lib::QueryText const &genericQuerySpec)
 
 Query (QueryID typeID, string querySpec)
 
virtual lib::QueryText buildSyntacticRepresentation () const
 Extension point to generate a generic query definition on demand. More...
 
lib::QueryText getQueryDefinition () const
 access the complete syntactical representation of this query. More...
 
- Protected Member Functions inherited from Goal
 Goal (QueryID qid)
 

Private Types

typedef Query< Placement< MO > > _Query
 

Private Member Functions

DiscoveryQuery const & operator= (DiscoveryQuery const &)
 Assignment explicitly disallowed (but copy ctor is ok)
 

Additional Inherited Members

- Static Public Member Functions inherited from Query< RES >
static Builder build (Kind queryType=Goal::GENERIC)
 
- Static Protected Member Functions inherited from Query< RES >
static QueryID defineQueryTypeID (Kind queryType=Goal::GENERIC)
 
- Protected Attributes inherited from Goal
QueryID id_
 

Member Function Documentation

◆ buildContentFilter()

virtual ContentFilter buildContentFilter ( ) const
protectedpure virtual

yield additional filter to be applied to the result set.

Implemented in ScopeQuery< MO >, and SpecificContentsQuery< MO >.

+ Inheritance diagram for DiscoveryQuery< MO >:
+ Collaboration diagram for DiscoveryQuery< MO >:

The documentation for this class was generated from the following file: