#pragma once
#ifndef __DEVICES_H__
#define __DEVICES_H__
#include"ModuleDevice.h"
#include"pmc_types.h"
#include"DeviceAttribute.h"
#include"BaseDevice.h"
#include"Dictionary.h"

class CDEVICE {
private:
	Dictionary< BaseDevice*,MAX_DEVICE_COUNT>devices;
public:
	CDEVICE();
	void create();
	BaseDevice* getDevice(const char* moduleDotName);
	BaseDevice* getDevice(const char* module,const char* name);
	BaseDevice* getDeviceByIndex(int index);
	int getDeviceCount();
	void addDevice(BaseDevice* device);
	
};
extern CDEVICE* DEVICE;
void initEnvironment();
extern char MODULE_NAME[];
#endif
