6#ifndef _cisstMultiTask_mtsExecutionResult_h
7#define _cisstMultiTask_mtsExecutionResult_h
44 enum Enum {
UNDEFINED,
COMMAND_SUCCEEDED,
COMMAND_QUEUED,
FUNCTION_NOT_BOUND,
COMMAND_HAS_NO_MAILBOX,
COMMAND_DISABLED,
INTERFACE_COMMAND_MAILBOX_FULL,
COMMAND_ARGUMENT_QUEUE_FULL,
INVALID_INPUT_TYPE,
METHOD_OR_FUNCTION_FAILED,
INVALID_COMMAND_ID,
ARGUMENT_DYNAMIC_CREATION_FAILED,
SERIALIZATION_ERROR,
DESERIALIZATION_ERROR,
NO_FINISHED_EVENT };
45static std::string EnumToString(
const Enum & value)
CISST_THROW(std::runtime_error);
46static Enum EnumFromString(
const std::string & value)
CISST_THROW(std::runtime_error);
85 operator bool (
void)
const;
94 void ToStream(std::ostream & outputStream)
const;
95 void ToStreamRaw(std::ostream & outputStream,
const char delimiter =
' ',
96 bool headerOnly =
false,
const std::string & headerPrefix =
"")
const;
100 void SerializeBinary(std::ostream & outputStream)
const CISST_THROW(std::runtime_error);
102 void SerializeText(std::ostream & outputStream,
const char delimiter =
',') const
CISST_THROW(
std::runtime_error);
104 void DeSerializeText(
std::istream & inputStream, const
char delimiter =
',')
CISST_THROW(
std::runtime_error);
108 double Scalar(const
size_t index) const
CISST_THROW(
std::out_of_range);
109 std::
string ScalarDescription(const
size_t index, const
std::
string & userDescription =
"") const
CISST_THROW(
std::out_of_range);
111 void SerializeTextJSON(Json::Value & jsonValue)
const;
112 void DeSerializeTextJSON(
const Json::Value & jsonValue)
CISST_THROW(std::runtime_error);
136 data.SerializeBinary(outputStream);
139 data.DeSerializeBinary(inputStream, localFormat, remoteFormat);
142 data.SerializeText(outputStream, delimiter);
145 data.DeSerializeText(inputStream, delimiter);
157 return data.ScalarDescription(index, userDescription);
160 return data.Scalar(index);
164 outputStream << cmnData<mtsExecutionResult >::HumanReadable(data);
static bool ScalarNumberIsFixed(const DataType &data)
Definition mtsExecutionResult.h:150
static std::string HumanReadable(const DataType &data)
Definition mtsExecutionResult.h:147
static void Copy(DataType &data, const DataType &source)
Definition mtsExecutionResult.h:129
static void SerializeText(const DataType &data, std::ostream &outputStream, const char delimiter=',') CISST_THROW(std
Definition mtsExecutionResult.h:141
static void SerializeBinary(const DataType &data, std::ostream &outputStream) CISST_THROW(std
Definition mtsExecutionResult.h:135
static void DeSerializeBinary(DataType &data, std::istream &inputStream, const cmnDataFormat &localFormat, const cmnDataFormat &remoteFormat) CISST_THROW(std
Definition mtsExecutionResult.h:138
@ IS_SPECIALIZED
Definition mtsExecutionResult.h:127
static void DeSerializeText(DataType &data, std::istream &inputStream, const char delimiter=',') CISST_THROW(std
Definition mtsExecutionResult.h:144
static std::string SerializeDescription(const DataType &data, const char delimiter, const std::string &userDescription)
Definition mtsExecutionResult.h:132
mtsExecutionResult DataType
Definition mtsExecutionResult.h:128
static double Scalar(const DataType &data, const size_t index) CISST_THROW(std
Definition mtsExecutionResult.h:159
static size_t ScalarNumber(const DataType &data)
Definition mtsExecutionResult.h:153
static std::string ScalarDescription(const DataType &data, const size_t index, const std::string &userDescription="") CISST_THROW(std
Definition mtsExecutionResult.h:156
Definition cmnDataFunctions.h:51
Definition mtsExecutionResult.h:34
static std::string static EnumToString(const Enum &value) CISST_THROW(std Enum static EnumFromString(const std::string &value) CISST_THROW(std const std::vector< int > & EnumVectorInt(void)
Definition mtsExecutionResult.h:47
mtsExecutionResult::Enum mValue
Definition mtsExecutionResult.h:51
Enum
Definition mtsExecutionResult.h:44
@ COMMAND_QUEUED
Definition mtsExecutionResult.h:44
@ INVALID_COMMAND_ID
Definition mtsExecutionResult.h:44
@ UNDEFINED
Definition mtsExecutionResult.h:44
@ METHOD_OR_FUNCTION_FAILED
Definition mtsExecutionResult.h:44
@ COMMAND_HAS_NO_MAILBOX
Definition mtsExecutionResult.h:44
@ ARGUMENT_DYNAMIC_CREATION_FAILED
Definition mtsExecutionResult.h:44
@ FUNCTION_NOT_BOUND
Definition mtsExecutionResult.h:44
@ COMMAND_ARGUMENT_QUEUE_FULL
Definition mtsExecutionResult.h:44
@ SERIALIZATION_ERROR
Definition mtsExecutionResult.h:44
@ INVALID_INPUT_TYPE
Definition mtsExecutionResult.h:44
@ COMMAND_SUCCEEDED
Definition mtsExecutionResult.h:44
@ COMMAND_DISABLED
Definition mtsExecutionResult.h:44
@ DESERIALIZATION_ERROR
Definition mtsExecutionResult.h:44
@ NO_FINISHED_EVENT
Definition mtsExecutionResult.h:44
@ INTERFACE_COMMAND_MAILBOX_FULL
Definition mtsExecutionResult.h:44
void ToStream(std::ostream &outputStream) const
void DeSerializeText(std::istream &inputStream, const char delimiter=',') CISST_THROW(std std::string HumanReadable(void) const
Definition mtsExecutionResult.h:105
void GetValue(mtsExecutionResult::Enum &placeHolder) const
void ToStreamRaw(std::ostream &outputStream, const char delimiter=' ', bool headerOnly=false, const std::string &headerPrefix="") const
static const std::string ToString(const Enum &value)
void SetValue(const mtsExecutionResult::Enum &newValue)
void Copy(const mtsExecutionResult &source)
mtsExecutionResult(const mtsExecutionResult::Enum &newValue)
void SerializeBinary(std::ostream &outputStream) const CISST_THROW(std void DeSerializeBinary(std::istream &inputStream, const cmnDataFormat &localFormat, const cmnDataFormat &remoteFormat) CISST_THROW(std void SerializeText(std::ostream &outputStream, const char delimiter=',') const CISST_THROW(std std::string SerializeDescription(const char delimiter=',', const std::string &userDescription="") const
Definition mtsExecutionResult.h:103
bool ScalarNumberIsFixed(void) const
mtsExecutionResult ThisType
Definition mtsExecutionResult.h:64
mtsExecutionResult::Enum GetValue(void) const
Definition mtsExecutionResult.h:57
static const std::vector< std::string > & EnumVectorString(void)
size_t ScalarNumber(void) const
mtsExecutionResult::Enum & Value(void)
void DeSerializeRaw(std::istream &inputStream)
Enum GetResult(void) const
Definition mtsExecutionResult.h:78
mtsExecutionResult(const mtsExecutionResult &other)
const mtsExecutionResult::Enum & Value(void) const
void SerializeRaw(std::ostream &outputStream) const
Definition mtsGenericObjectProxy.h:376
Class registration macros.
#define CMN_DECLARE_SERVICES_INSTANTIATION(className)
Definition cmnClassRegisterMacros.h:199
Defines cmnClassServices.
#define CMN_DECLARE_DATA_FUNCTIONS_JSON_FOR_ENUM(_enum)
Definition cmnDataFunctionsEnumMacros.h:97
#define CMN_DATA_SPECIALIZATION_FOR_ENUM_USER_HUMAN_READABLE(_enum, _promotedType, _humanReadableFunction)
Definition cmnDataFunctionsEnumMacros.h:26
void cmnDeSerializeRaw(std::istream &inputStream, _elementType &data) CISST_THROW(std
Definition cmnDeSerializer.h:82
#define CISST_EXPORT
Definition cmnExportMacros.h:50
#define CISST_THROW(exceptionParameter)
Somewhat portable compilation warning message. This works with very recent versions of gcc (4....
Definition cmnPortability.h:559
void cmnSerializeRaw(std::ostream &outputStream, const _elementType &data) CISST_THROW(std
Definition cmnSerializer.h:76
std::string CISST_EXPORT cmnDataHumanReadable_mtsExecutionResult_Enum(const mtsExecutionResult::Enum &data)
mtsGenericObjectProxy< mtsExecutionResult > mtsExecutionResultProxy
Definition mtsExecutionResult.h:118
std::ostream & operator<<(std::ostream &outputStream, const mtsExecutionResult &data)
Definition mtsExecutionResult.h:163
Forward declarations and #define for cisstMultiTask.
bool operator==(const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const
Definition vctDynamicConstMatrixBase.h:715
bool operator!=(const vctDynamicConstMatrixBase< __matrixOwnerType, _elementType > &otherMatrix) const
Definition vctDynamicConstMatrixBase.h:743
ThisType & operator=(const vctDynamicConstMatrixBase< __matrixOwnerType, __elementType > &otherMatrix)
Definition vctDynamicMatrix.h:255