#include "device.hpp"
#include <iostream>

Device::Device() :
    reg_control(0x00)
{

    std::cout << "Device::Device()" << std::endl;
    std::cout << +reg_control.raw << std::endl;

    reg_control.bits.POWER_DEV = Reg_Control::POWER_DEV::TURN_OFF;
    reg_control.bits.SPEED = Reg_Control::SPEED::STAND_STILL;

    std::cout << "POWER = " << +reg_control.bits.POWER_DEV <<  std::endl;
    std::cout << "SPEED = " <<+reg_control.bits.SPEED <<  std::endl;
}

void Device::doSomething()
{
    std::cout << "Device::doSomething()" << std::endl;

    reg_control.bits.POWER_DEV = Reg_Control::POWER_DEV::TURN_ON;
    reg_control.bits.SPEED = Reg_Control::SPEED::FAST;

    if(reg_control.bits.POWER_DEV == Reg_Control::POWER_DEV::TURN_ON){
        std::cout << "device turned on!" << std::endl;
    }

    std::cout << "POWER = " << +reg_control.bits.POWER_DEV <<  std::endl;
    std::cout << "SPEED = " << +reg_control.bits.SPEED <<  std::endl;
     
    std::cout << +reg_control << std::endl;

    reg_control = 0;

    std::cout << +reg_control << std::endl;

    std::cout << "POWER = " << +reg_control.bits.POWER_DEV <<  std::endl;
    std::cout << "SPEED = " << +reg_control.bits.SPEED <<  std::endl;

    //reg_control.bits.SPEED = Reg_Control::SPEED::FAST;
    reg_control.bits.POWER_DEV = Reg_Control::POWER_DEV::TURN_ON;
    
    std::cout << "POWER = " << +reg_control.bits.POWER_DEV <<  std::endl;
    std::cout << "SPEED = " << +reg_control.bits.SPEED <<  std::endl;



    
}