class CCECAdapterMessage
{
public:
- CCECAdapterMessage(void)
+ CCECAdapterMessage(void) :
+ event(false)
{
Clear();
}
}
else
{
- strMsg = MessageCodeAsString();
+ strMsg = ToString(Message());
switch (Message())
{
return strMsg;
}
- CStdString MessageCodeAsString(void) const
+ static const char *ToString(cec_adapter_messagecode msgCode)
{
- CStdString strMsg;
- switch (Message())
+ switch (msgCode)
{
case MSGCODE_NOTHING:
- strMsg = "NOTHING";
- break;
+ return "NOTHING";
case MSGCODE_PING:
- strMsg = "PING";
- break;
+ return "PING";
case MSGCODE_TIMEOUT_ERROR:
- strMsg = "TIMEOUT";
- break;
+ return "TIMEOUT";
case MSGCODE_HIGH_ERROR:
- strMsg = "HIGH_ERROR";
- break;
+ return "HIGH_ERROR";
case MSGCODE_LOW_ERROR:
- strMsg = "LOW_ERROR";
- break;
+ return "LOW_ERROR";
case MSGCODE_FRAME_START:
- strMsg = "FRAME_START";
- break;
+ return "FRAME_START";
case MSGCODE_FRAME_DATA:
- strMsg = "FRAME_DATA";
- break;
+ return "FRAME_DATA";
case MSGCODE_RECEIVE_FAILED:
- strMsg = "RECEIVE_FAILED";
- break;
+ return "RECEIVE_FAILED";
case MSGCODE_COMMAND_ACCEPTED:
- strMsg = "COMMAND_ACCEPTED";
- break;
+ return "COMMAND_ACCEPTED";
case MSGCODE_COMMAND_REJECTED:
- strMsg = "COMMAND_REJECTED";
- break;
+ return "COMMAND_REJECTED";
case MSGCODE_SET_ACK_MASK:
- strMsg = "SET_ACK_MASK";
- break;
+ return "SET_ACK_MASK";
case MSGCODE_TRANSMIT:
- strMsg = "TRANSMIT";
- break;
+ return "TRANSMIT";
case MSGCODE_TRANSMIT_EOM:
- strMsg = "TRANSMIT_EOM";
- break;
+ return "TRANSMIT_EOM";
case MSGCODE_TRANSMIT_IDLETIME:
- strMsg = "TRANSMIT_IDLETIME";
- break;
+ return "TRANSMIT_IDLETIME";
case MSGCODE_TRANSMIT_ACK_POLARITY:
- strMsg = "TRANSMIT_ACK_POLARITY";
- break;
+ return "TRANSMIT_ACK_POLARITY";
case MSGCODE_TRANSMIT_LINE_TIMEOUT:
- strMsg = "TRANSMIT_LINE_TIMEOUT";
- break;
+ return "TRANSMIT_LINE_TIMEOUT";
case MSGCODE_TRANSMIT_SUCCEEDED:
- strMsg = "TRANSMIT_SUCCEEDED";
- break;
+ return "TRANSMIT_SUCCEEDED";
case MSGCODE_TRANSMIT_FAILED_LINE:
- strMsg = "TRANSMIT_FAILED_LINE";
- break;
+ return "TRANSMIT_FAILED_LINE";
case MSGCODE_TRANSMIT_FAILED_ACK:
- strMsg = "TRANSMIT_FAILED_ACK";
- break;
+ return "TRANSMIT_FAILED_ACK";
case MSGCODE_TRANSMIT_FAILED_TIMEOUT_DATA:
- strMsg = "TRANSMIT_FAILED_TIMEOUT_DATA";
- break;
+ return "TRANSMIT_FAILED_TIMEOUT_DATA";
case MSGCODE_TRANSMIT_FAILED_TIMEOUT_LINE:
- strMsg = "TRANSMIT_FAILED_TIMEOUT_LINE";
- break;
+ return "TRANSMIT_FAILED_TIMEOUT_LINE";
case MSGCODE_FIRMWARE_VERSION:
- strMsg = "FIRMWARE_VERSION";
- break;
+ return "FIRMWARE_VERSION";
case MSGCODE_START_BOOTLOADER:
- strMsg = "START_BOOTLOADER";
- break;
+ return "START_BOOTLOADER";
case MSGCODE_FRAME_EOM:
- strMsg = "FRAME_EOM";
- break;
+ return "FRAME_EOM";
case MSGCODE_FRAME_ACK:
- strMsg = "FRAME_ACK";
- break;
+ return "FRAME_ACK";
+ case MSGCODE_SET_POWERSTATE:
+ return "SET_POWERSTATE";
+ case MSGCODE_SET_CONTROLLED:
+ return "SET_CONTROLLED";
+ case MSGCODE_GET_AUTO_ENABLED:
+ return "GET_AUTO_ENABLED";
+ case MSGCODE_SET_AUTO_ENABLED:
+ return "SET_AUTO_ENABLED";
+ case MSGCODE_GET_DEFAULT_LOGICAL_ADDRESS:
+ return "GET_DEFAULT_LOGICAL_ADDRESS";
+ case MSGCODE_SET_DEFAULT_LOGICAL_ADDRESS:
+ return "SET_DEFAULT_LOGICAL_ADDRESS";
+ case MSGCODE_GET_LOGICAL_ADDRESS_MASK:
+ return "GET_LOGICAL_ADDRESS_MASK";
+ case MSGCODE_SET_LOGICAL_ADDRESS_MASK:
+ return "SET_LOGICAL_ADDRESS_MASK";
+ case MSGCODE_GET_PHYSICAL_ADDRESS:
+ return "GET_PHYSICAL_ADDRESS";
+ case MSGCODE_SET_PHYSICAL_ADDRESS:
+ return "SET_PHYSICAL_ADDRESS";
+ case MSGCODE_GET_DEVICE_TYPE:
+ return "GET_DEVICE_TYPE";
+ case MSGCODE_SET_DEVICE_TYPE:
+ return "SET_DEVICE_TYPE";
+ case MSGCODE_GET_HDMI_VERSION:
+ return "GET_HDMI_VERSION";
+ case MSGCODE_SET_HDMI_VERSION:
+ return "SET_HDMI_VERSION";
+ case MSGCODE_GET_OSD_NAME:
+ return "GET_OSD_NAME";
+ case MSGCODE_SET_OSD_NAME:
+ return "SET_OSD_NAME";
+ case MSGCODE_WRITE_EEPROM:
+ return "WRITE_EEPROM";
}
- return strMsg;
+ return "unknown";
}
uint8_t operator[](uint8_t pos) const
packet.Shift(iShiftBy);
}
+ void Append(CCECAdapterMessage &data)
+ {
+ Append(data.packet);
+ }
+
+ void Append(cec_datapacket &data)
+ {
+ for (uint8_t iPtr = 0; iPtr < data.size; iPtr++)
+ PushBack(data[iPtr]);
+ }
+
void PushBack(uint8_t add)
{
packet.PushBack(add);
CECDEVICE_UNKNOWN;
}
- uint8_t maxTries;
- uint8_t tries;
- cec_adapter_messagecode reply;
- cec_datapacket packet;
- cec_adapter_message_state state;
- int32_t transmit_timeout;
- bool isTransmission;
- bool expectControllerAck;
- uint8_t lineTimeout;
- uint8_t retryTimeout;
- PLATFORM::CMutex mutex;
- PLATFORM::CCondition condition;
+ uint8_t maxTries;
+ uint8_t tries;
+ cec_adapter_messagecode reply;
+ cec_datapacket packet;
+ cec_adapter_message_state state;
+ int32_t transmit_timeout;
+ bool isTransmission;
+ bool expectControllerAck;
+ uint8_t lineTimeout;
+ uint8_t retryTimeout;
+ PLATFORM::CEvent event;
};
}