8#include "utility/interface/igroup.h"
10#include <unordered_map>
22 using slot_signal = shared::Signal<IString,uint32>;
23 enum class Resolve { Write, ReadQuiet, ReadException };
40 using groupcount_signal = shared::Signal<TType, uint32>;
56 virtual groupcount_signal *getGroupCountSignal()
const=0;
59 virtual const ISlot * getSlot(
const ISlotID &
id,Resolve r) = 0;
60 virtual const ISlot * getSlot(
const ISlotID &
id)
const = 0;
61 virtual const ISlot * getDefaultSlot()
const=0;
62 virtual const ISlot * getAnySlot()
const = 0;
63 virtual IString getSlotName(uint32 slot,uint32 thread)
const = 0;
66 virtual const IGroup *getNullGroup()
const=0;
73 virtual slot_signal *getSlotAddedSignal()
const=0;
74 virtual slot_signal *getSlotRemovedSignal()
const=0;
Definition istringlist.h:10
Interface for containers of IThings.
Definition icontainer.h:21
Interface to a group object.
Definition igroup.h:9
Group container class.
Definition igrouplist.h:16
virtual IStringList getAllSlotNames() const =0
Returns a list of all category names found in the container.
virtual const IContainer * getIContainer() const =0
Returns a const pointer to the container class representing a list of groups.
static const TType type_
A unique type number that identifies this class, for use in convert_cast() and convert_getcast().
Definition igrouplist.h:19
virtual IStringList slotsFromType(TType type) const =0
virtual IGroupID resolve(const IGroupID &input, Resolve resolve)=0
Resolve (if necessary) a groupid into actual pointers.
virtual name_signal * getGroupRenameSignal() const =0
Emitted when a group is renamed from arg1 to arg2.
virtual IContainer * getIContainer()=0
Returns a pointer to the container class representing a list of groups.
virtual IStringList getAllGroupNames() const =0
Returns a list of all group names found in the container.
shared::Signal< IString, IString > name_signal
Signal type used to notify system of changes.
Definition igrouplist.h:21
Interface to a slot object.
Definition igroup.h:23
uint32 TType
class type indicator
Definition basedef.h:46
Interface for container of IThings.
namespace Itasca
Definition basememory.cpp:10