Itasca C++ Interface
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
itascaxd::IRangeElementGroup Class Referenceabstract

Interface to a group filter element, used to filter objects by group assignment. More...

#include <irangeelementgroup.h>

Public Types

using Entry = std::pair<string,string>
 
using Entries = std::vector<Entry>
 

Public Member Functions

virtual Entries getAllEntries () const =0
 
virtual bool getAnd () const =0
 Returns the AND state, if true then object must belong to ALL groups.
 
virtual bool getOnly () const =0
 Returns the ONLY state, if true then object must not be a direct member of any groups not on this list.
 
virtual uint32 getMatches () const =0
 
virtual string getByName () const =0
 
virtual Entry decompose (const string &groupName) const =0
 
virtual void setAllSlots (const string &slot)=0
 
virtual bool addEntry (const string &slot, const string &name)=0
 
virtual bool removeEntry (const string &slot, const string &name)=0
 
virtual void setAnd (bool b)=0
 
virtual void setOnly (bool b)=0
 Returns the ONLY state, if true then object must not be a direct member of any groups not on this list.
 
virtual void setMatches (uint32 i)=0
 
virtual void setByName (const string &name)=0
 
virtual void clear ()=0
 
virtual void enableByParsing ()=0
 Set that parsing using the BY keyword is enabled.
 

Public Attributes

shared::Signal< const string &, const string & > entryAdded
 
shared::Signal< const string &, const string & > entryRemoved
 
shared::Signal< bool > andChanged
 
shared::Signal< bool > onlyChanged
 
shared::Signal< const string & > byNameChanged
 
shared::Signal< uint32 > matchesChanged
 

Static Public Attributes

static const TType type_ = 0x4c815b95
 The type identification number for this class, for use in convert_cast() and convert_getcast().
 

Detailed Description

Interface to a group filter element, used to filter objects by group assignment.

A group filter element filters objects by their associate with group names. Note that a particular object being filtered may or may not have more than one slot.

Member Function Documentation

◆ addEntry()

virtual bool itascaxd::IRangeElementGroup::addEntry ( const string & slot,
const string & name )
pure virtual

This SLOT adds a new slot/group pair to the list of those being checked. Duplicate names are discarded, but all entries are case sensitive at this point.

◆ clear()

virtual void itascaxd::IRangeElementGroup::clear ( )
pure virtual

This SLOT removes all group names being checked, but does not change the current slot setting.

◆ removeEntry()

virtual bool itascaxd::IRangeElementGroup::removeEntry ( const string & slot,
const string & name )
pure virtual

This SLOT removes the group name from the list of those being checked. This operation is case sensitive.

◆ setAnd()

virtual void itascaxd::IRangeElementGroup::setAnd ( bool b)
pure virtual

Sets the filter element to require the INTERSECTION of all groups. Cannot be used with a specific slot (slot must be limits<uint32>::max())


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