16#ifndef __albaDeviceSet_h
17#define __albaDeviceSet_h
99 std::list<albaDevice*> *
GetDevices() {
return &m_Devices;}
long albaID
type for IDs inside ALBA
#define EXPORT_STL_LIST(declspec_, T_)
This class manages a set of usb-devices, and stores a list of all child devices' pointers.
int RemoveDevice(albaDevice *device, bool force=false)
Remove a device from the manager's list.
virtual void AddDevice(albaDevice *device)
Add a new device.
albaMutexLock * m_DevicesMutex
virtual int InternalRestore(albaStorageElement *node)
This function fills in the device with settings restored from the node.
int GetNumberOfDevices()
Return the number of devices assigned to this manager.
virtual int InternalInitialize()
Initialization automatically initialize subdevices.
albaDevice * GetDevice(albaID id)
Return a device in the set given its ID.
std::list< albaDevice * > m_Devices
virtual void InternalShutdown()
shutdown also subdevices
void RemoveAllDevices(bool force=false)
Remove all devices (as as RemoveAllSenders())
albaDevice * GetDeviceByIndex(int idx)
Return a device in the set given its ID.
virtual int InternalStore(albaStorageElement *node)
This is used to allow nested serialization of subclasses.
int RemoveDevice(albaID id, bool force=false)
Remove a device from the manager's list given its ID.
int RemoveDeviceByIndex(int idx, bool force=false)
Remove a device from the manager's list given its ID.
std::list< albaDevice * > * GetDevices()
Return the list of devices pluged into this device set.
int RemoveDevice(const char *name, bool force=false)
Remove a device from the manager's list given its name.
albaDevice * GetDevice(const char *name)
Return a device in the set given its name.
albaTypeMacro(albaDeviceSet, albaDevice)
New channel for settings.
virtual void OnEvent(albaEventBase *event)
Reimplemented to manage AddDevice event.
This abstract class manages function calls coming from devices and issue specific events to interacto...
Implementation of the message object for the Subject/Observer design pattern.
Critical section locking class that can be allocated on the stack.
Abstract class representing the interface for the unit of information stored in the storage.
ALBA_ID_DEC(DEVICE_REMOVE)
Remove a device (passed in the Data argument) from this set (to be removed)
ALBA_ID_DEC(DEVICE_ADDED)
Issued when a new device (passed in the Data argument) is added to this set.
ALBA_ID_DEC(DEVICE_REMOVING)
Issued when a device (passed in the Data argument) is being removed from this set.
ALBA_ID_DEC(DEVICE_ADD)
Adds a device (passed in the Data argument) to this set (to be removed)