Advertisement
Guest User

Untitled

a guest
Nov 12th, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.76 KB | None | 0 0
  1. #include<iostream>
  2. #include<string>
  3. class Device
  4. {
  5. protected:
  6.     bool PoweredOn;
  7.     std::string DeviceID, Manufacturer;
  8. public:
  9.     Device() :PoweredOn(0), DeviceID("123"), Manufacturer("NoName") {};
  10.     Device(bool OnOff,std::string DeviceID,std::string Manufacturer):PoweredOn(OnOff),DeviceID(DeviceID),Manufacturer(Manufacturer){}
  11.     void OnOffSwitch();
  12. };
  13. void Device::OnOffSwitch()
  14. {
  15.     if (PoweredOn)
  16.         PoweredOn = 0;
  17.     PoweredOn = 1;
  18. }
  19. class USBDevice:public virtual Device
  20. {
  21. protected:
  22.     bool Connected;
  23.     std::string USBStandard;
  24. public:
  25.     USBDevice():Device(),Connected(0),USBStandard("2.0"){}
  26.     USBDevice(bool OnOff, std::string DeviceID, std::string Manufacturer,bool Connected,std::string USBStandard):Device(OnOff,DeviceID,Manufacturer),Connected(Connected),USBStandard(USBStandard){}
  27.     virtual void ConnectDisconnect();
  28. };
  29. void USBDevice::ConnectDisconnect()
  30. {
  31.     if (Connected)
  32.         Connected = 0;
  33.     Connected = 1;
  34. }
  35. class NetworkDevice :public virtual Device
  36. {
  37. protected:
  38.     bool Connected;
  39.     std::string NetworkStandard;
  40. public:
  41.     NetworkDevice(): Device(), Connected(0), NetworkStandard("802.11a"){}
  42.     NetworkDevice(bool OnOff, std::string DeviceID, std::string Manufacturer, bool Connected, std::string NetworkStandard) :Device(OnOff, DeviceID, Manufacturer), Connected(Connected), NetworkStandard(NetworkStandard){}
  43.     virtual void ConnectDisconnect();
  44. };
  45. void NetworkDevice::ConnectDisconnect()
  46. {
  47.     if (Connected)
  48.     Connected = 0;
  49.     Connected = 1;
  50. }
  51. class WirelessAdapter :public USBDevice,public NetworkDevice
  52. {
  53.     int noOfAntennas;
  54.     std::string gain;
  55. public:
  56.     WirelessAdapter():noOfAntennas(0),gain("80db"),USBDevice(),NetworkDevice(){}
  57.     WirelessAdapter(int noOfAntennas,std::string gain,bool USBOnOff, std::string USBDeviceID, std::string USBManufacturer, bool USBConnected, std::string USBStandard, bool NetworkDeviceOnOff, std::string NetworkDeviceID, std::string NetworkDeviceManufacturer, bool NetworkDeviceConnected, std::string NetworkStandard):noOfAntennas(noOfAntennas),gain(gain),USBDevice(USBOnOff,USBDeviceID,USBManufacturer,USBConnected,USBStandard),NetworkDevice(NetworkDeviceOnOff,NetworkDeviceID,NetworkDeviceManufacturer,NetworkDeviceConnected,NetworkStandard){}
  58.     void ConnectDisconnect();
  59.     void Status();
  60. };
  61. void WirelessAdapter::ConnectDisconnect()
  62. {
  63.     USBDevice::ConnectDisconnect();
  64.     NetworkDevice::ConnectDisconnect();
  65. }
  66. void WirelessAdapter::Status()
  67. {
  68.     if (USBDevice::Connected)
  69.         std::cout << "USB uredaj je spojen." << std::endl;
  70.     else
  71.         std::cout << "USB uredaj nije spojen." << std::endl;
  72.     if (NetworkDevice::Connected)
  73.             std::cout << "Mrezni uredaj je spojen." << std::endl;
  74.     else
  75.         std::cout << "Mrezni uredaj nije spojen." << std::endl;
  76. }
  77. int main()
  78. {
  79.     WirelessAdapter wa;
  80.     wa.Status();
  81.     wa.ConnectDisconnect();
  82.     wa.Status();
  83.    
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement