Itasca C++ Interface
Loading...
Searching...
No Matches
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: