Class Query::Participants
Defined in File Query.hpp
Nested Relationships
This class is a nested type of Class Query.
Nested Types
Class Documentation
-
class Participants
A class to describe a filter on which schedule participants to pay attention to.
Public Types
-
enum class Mode : uint16_t
Values:
-
enumerator Invalid
Invalid mode, behavior is undefined.
-
enumerator All
Get all participants.
-
enumerator Include
Get only the participants listed.
-
enumerator Exclude
Get all participants except the ones listed.
-
enumerator Invalid
Public Functions
-
Participants()
Default constructor, uses All mode.
-
Mode get_mode() const
Get the mode for this Participants filter.
-
All *all()
Get the All interface if this Participants filter is in All mode, otherwise get a nullptr.
-
Include *include()
Get the Include interface if this Participants filter is in Include mode, otherwise get a nullptr.
-
Participants &include(std::vector<ParticipantId> ids)
Change this filter to Include mode, and include the specified participant IDs.
-
Exclude *exclude()
Get the Exclude interface if this Participants filter is in Exclude mode, otherwise get a nullptr.
-
Participants &exclude(std::vector<ParticipantId> ids)
Change this filter to Exclude mode, and exclude the specified participant IDs.
Public Static Functions
-
static const Participants &make_all()
Constructor to use All mode.
-
static Participants make_only(std::vector<ParticipantId> ids)
Constructor to use Include mode.
- Parameters:
ids – [in] The IDs of the participants that should be included in the query.
-
static Participants make_all_except(std::vector<ParticipantId> ids)
Constructor to use Exclude mode.
- Parameters:
ids – [in] The IDs of the participants that should be excluded from the query.
-
class All
This is a placeholder class in case we ever want to extend the features of the
All
mode.
-
class Exclude
The interface for the Participants::Exclude mode.
Public Functions
-
Exclude(std::vector<ParticipantId> ids)
Constructor.
-
const std::vector<ParticipantId> &get_ids() const
Get the IDs of the participants that should be excluded.
-
Exclude &set_ids(std::vector<ParticipantId> ids)
Set the IDs of the participants that should be excluded.
-
Exclude(std::vector<ParticipantId> ids)
-
class Include
The interface for the Participants::Include mode.
Public Functions
-
Include(std::vector<ParticipantId> ids)
Constructor.
-
const std::vector<ParticipantId> &get_ids() const
Get the IDs of the participants that should be included.
-
Include &set_ids(std::vector<ParticipantId> ids)
Set the IDs of the participants that should be included.
-
Include(std::vector<ParticipantId> ids)
-
enum class Mode : uint16_t