00001
00020 #ifndef RTC_BUFFERSTATUS_H
00021 #define RTC_BUFFERSTATUS_H
00022
00023 namespace RTC
00024 {
00025 class BufferStatus
00026 {
00027 public:
00028 enum Enum
00029 {
00030 BUFFER_OK = 0,
00031 BUFFER_ERROR,
00032 BUFFER_FULL,
00033 BUFFER_EMPTY,
00034 NOT_SUPPORTED,
00035 TIMEOUT,
00036 PRECONDITION_NOT_MET
00037 };
00038
00039 static const char* toString(Enum status)
00040 {
00041 const char* str[] = {
00042 "BUFFER_OK",
00043 "BUFFER_ERROR",
00044 "BUFFER_FULL",
00045 "BUFFER_EMPTY",
00046 "NOT_SUPPORTED",
00047 "TIMEOUT",
00048 "PRECONDITION_NOT_MET"
00049 };
00050 return str[status];
00051 }
00052 };
00053 };
00054
00055 #define BUFFERSTATUS_ENUM \
00056 typedef ::RTC::BufferStatus::Enum ReturnCode; \
00057 using ::RTC::BufferStatus::BUFFER_OK; \
00058 using ::RTC::BufferStatus::BUFFER_ERROR; \
00059 using ::RTC::BufferStatus::BUFFER_FULL; \
00060 using ::RTC::BufferStatus::BUFFER_EMPTY; \
00061 using ::RTC::BufferStatus::NOT_SUPPORTED; \
00062 using ::RTC::BufferStatus::TIMEOUT; \
00063 using ::RTC::BufferStatus::PRECONDITION_NOT_MET;
00064
00065 #endif // RTC_BUFFERSTATUS_H