00001
00020 #ifndef RTC_BUFFERSTATUS_H
00021 #define RTC_BUFFERSTATUS_H
00022
00023 namespace RTC
00024 {
00052 class BufferStatus
00053 {
00054 public:
00084 enum Enum
00085 {
00086 BUFFER_OK = 0,
00087 BUFFER_ERROR,
00088 BUFFER_FULL,
00089 BUFFER_EMPTY,
00090 NOT_SUPPORTED,
00091 TIMEOUT,
00092 PRECONDITION_NOT_MET
00093 };
00094
00118 static const char* toString(Enum status)
00119 {
00120 const char* str[] = {
00121 "BUFFER_OK",
00122 "BUFFER_ERROR",
00123 "BUFFER_FULL",
00124 "BUFFER_EMPTY",
00125 "NOT_SUPPORTED",
00126 "TIMEOUT",
00127 "PRECONDITION_NOT_MET"
00128 };
00129 return str[status];
00130 }
00131 };
00132 };
00133
00157 #define BUFFERSTATUS_ENUM \
00158 typedef ::RTC::BufferStatus::Enum ReturnCode; \
00159 using ::RTC::BufferStatus::BUFFER_OK; \
00160 using ::RTC::BufferStatus::BUFFER_ERROR; \
00161 using ::RTC::BufferStatus::BUFFER_FULL; \
00162 using ::RTC::BufferStatus::BUFFER_EMPTY; \
00163 using ::RTC::BufferStatus::NOT_SUPPORTED; \
00164 using ::RTC::BufferStatus::TIMEOUT; \
00165 using ::RTC::BufferStatus::PRECONDITION_NOT_MET;
00166
00167 #endif // RTC_BUFFERSTATUS_H