7 #include "SolenoidBase.h"
11 Resource *SolenoidBase::m_allocated = NULL;
13 tSolenoid *SolenoidBase::m_fpgaSolenoidModule = NULL;
14 uint32_t SolenoidBase::m_refCount = 0;
23 : m_moduleNumber (moduleNumber)
29 tRioStatusCode localStatus = NiFpga_Status_Success;
30 m_fpgaSolenoidModule = tSolenoid::create(&localStatus);
31 wpi_setError(localStatus);
45 delete m_fpgaSolenoidModule;
46 m_fpgaSolenoidModule = NULL;
60 tRioStatusCode localStatus = NiFpga_Status_Success;
64 uint8_t currentValue = m_fpgaSolenoidModule->readDO7_0(
m_moduleNumber - 1, &localStatus);
66 currentValue = currentValue & ~mask;
67 currentValue = currentValue | (value & mask);
68 m_fpgaSolenoidModule->writeDO7_0(
m_moduleNumber - 1, currentValue, &localStatus);
70 wpi_setError(localStatus);
82 tRioStatusCode localStatus = NiFpga_Status_Success;
83 uint8_t solenoids = m_fpgaSolenoidModule->readDO7_0(
m_moduleNumber - 1, &localStatus);
84 wpi_setError(localStatus);
uint32_t m_moduleNumber
Slot number where the module is plugged into the chassis.
static bool CheckSolenoidModule(uint8_t moduleNumber)
SolenoidBase(uint8_t moduleNumber)
void Set(uint8_t value, uint8_t mask)