00001 #ifndef VR_DRCONTECISADA_H
00002 #define VR_DRCONTECISADA_H
00003
00004 #include "DRRealDevice.h"
00005 #include "DVDaBase.h"
00006
00007 namespace Spr {
00008
00009
00010 class SPR_DLL DRContecIsaDa:public DRRealDevice{
00011 public:
00012
00013 class VirtualDevice:public DVDaBase{
00014 protected:
00015 int ch;
00016 DRContecIsaDa* realDevice;
00017 char name[100];
00018 public:
00019 VirtualDevice(DRContecIsaDa* r, int c);
00020 virtual DRRealDevice* RealDevice() { return realDevice; }
00021 virtual void Voltage(float v){ realDevice->Voltage(ch, v); }
00022 virtual void Digit(int d){ realDevice->Digit(ch, d); }
00023 virtual const char* Name() const{ return name; }
00024 };
00025 protected:
00026 char name[100];
00027
00028 int address;
00029 public:
00030
00031
00032 DRContecIsaDa(int address);
00033
00034 virtual const char* Name() const { return name; }
00035
00036 virtual bool Init();
00037
00038 virtual void Register(DVVirtualDevicePool& vpool);
00039
00040
00041 void Voltage(int ch, float v);
00042
00043 void Digit(int ch, int v);
00044 };
00045
00046
00047 }
00048
00049 #endif