Itasca C++ Interface
Toggle main menu visibility
Loading...
Searching...
No Matches
irangeelementgroup.h
Go to the documentation of this file.
1
#pragma once
2
// irangeelementgroup.h
3
4
#include "
module/interface/irangeelement.h
"
5
10
namespace
itasca
{
11
class
IGroup
;
12
}
13
14
namespace
itascaxd
{
16
20
class
IRangeElementGroup
{
// name = "real"
21
public
:
23
inline
static
const
TType
type_
= 0x4c815b95;
24
25
using
Entry = std::pair<string,string>;
// Slot,Group
26
using
Entries = std::vector<Entry>;
27
28
shared::Signal<const string &, const string &> entryAdded;
// slot, group
29
shared::Signal<const string &, const string &> entryRemoved;
// slot, group
30
shared::Signal<bool> andChanged;
31
shared::Signal<bool> onlyChanged;
32
shared::Signal<const string &> byNameChanged;
// name
33
shared::Signal<uint32> matchesChanged;
34
35
36
virtual
Entries getAllEntries()
const
=0;
38
virtual
bool
getAnd
()
const
=0;
40
virtual
bool
getOnly
()
const
=0;
41
virtual
uint32 getMatches()
const
=0;
42
virtual
string
getByName()
const
=0;
43
// Looks for "slot=group" string and decomposes into SLOT,GROUP names.
44
// If no = is present then SLOT will be null.
45
virtual
Entry decompose(
const
string
&groupName)
const
=0;
46
virtual
void
setAllSlots(
const
string
&slot)=0;
47
48
// SLOTS
51
virtual
bool
addEntry
(
const
string
&slot,
const
string
&name)=0;
54
virtual
bool
removeEntry
(
const
string
&slot,
const
string
&name)=0;
57
virtual
void
setAnd
(
bool
b)=0;
59
virtual
void
setOnly
(
bool
b)=0;
60
virtual
void
setMatches(uint32 i)=0;
61
virtual
void
setByName(
const
string
&name)=0;
64
virtual
void
clear
()=0;
66
virtual
void
enableByParsing
()=0;
67
};
68
}
69
namespace
module {
70
using
itascaxd::IRangeElementGroup;
71
}
72
73
// EoF
itasca::IGroup
Interface to a group object.
Definition
igroup.h:9
itascaxd::IRangeElementGroup
Interface to a group filter element, used to filter objects by group assignment.
Definition
irangeelementgroup.h:20
itascaxd::IRangeElementGroup::addEntry
virtual bool addEntry(const string &slot, const string &name)=0
itascaxd::IRangeElementGroup::setAnd
virtual void setAnd(bool b)=0
itascaxd::IRangeElementGroup::type_
static const TType type_
The type identification number for this class, for use in convert_cast() and convert_getcast().
Definition
irangeelementgroup.h:23
itascaxd::IRangeElementGroup::enableByParsing
virtual void enableByParsing()=0
Set that parsing using the BY keyword is enabled.
itascaxd::IRangeElementGroup::getAnd
virtual bool getAnd() const =0
Returns the AND state, if true then object must belong to ALL groups.
itascaxd::IRangeElementGroup::getOnly
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 lis...
itascaxd::IRangeElementGroup::clear
virtual void clear()=0
itascaxd::IRangeElementGroup::setOnly
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 lis...
itascaxd::IRangeElementGroup::removeEntry
virtual bool removeEntry(const string &slot, const string &name)=0
TType
uint32 TType
class type indicator
Definition
basedef.h:47
irangeelement.h
Interface to a filter element, which is a member of a IRange.
itasca
namespace Itasca
Definition
basememory.cpp:14
itascaxd
Itasca Library standard namespace, specific to 2D or 3D.
Definition
icontactmodule.h:6
common
module
interface
irangeelementgroup.h
Generated by
1.18.0