#include "VirtualChannel.h" VirtualChannel::VirtualChannel(object_id_t objectId, uint8_t vcId, const char* vcName, PtmeIF& ptme, const std::atomic_bool& txOn) : SystemObject(objectId), ptme(ptme), vcId(vcId), vcName(vcName), txOn(txOn) {} ReturnValue_t VirtualChannel::initialize() { return returnvalue::OK; } ReturnValue_t VirtualChannel::sendNextTm(const uint8_t* data, size_t size) { return write(data, size); } ReturnValue_t VirtualChannel::write(const uint8_t* data, size_t size) { // if (txOn) { return ptme.writeToVc(vcId, data, size); //} // return returnvalue::OK; } uint8_t VirtualChannel::getVcid() const { return vcId; } const char* VirtualChannel::getName() const { return vcName.c_str(); } bool VirtualChannel::isBusy() const { // Data is discarded, so channel is not busy. // if (not txOn) { // return false; //} return ptme.isBusy(vcId); } void VirtualChannel::cancelTransfer() { ptme.cancelTransfer(vcId); }