6#ifndef _cisstParameterTypes_prmKeyValue_h
7#define _cisstParameterTypes_prmKeyValue_h
49 prmKeyValue(
const std::string & newKey,
const std::string & newValue);
54 void ToStream(std::ostream & outputStream)
const;
55 void ToStreamRaw(std::ostream & outputStream,
const char delimiter =
' ',
56 bool headerOnly =
false,
const std::string & headerPrefix =
"")
const;
60 void SerializeBinary(std::ostream & outputStream)
const CISST_THROW(std::runtime_error);
62 void SerializeText(std::ostream & outputStream,
const char delimiter =
',') const
CISST_THROW(
std::runtime_error);
64 void DeSerializeText(
std::istream & inputStream, const
char delimiter =
',')
CISST_THROW(
std::runtime_error);
68 double Scalar(const
size_t index) const
CISST_THROW(
std::out_of_range);
69 std::
string ScalarDescription(const
size_t index, const
std::
string & userDescription =
"") const
CISST_THROW(
std::out_of_range);
71 void SerializeTextJSON(Json::Value & jsonValue)
const;
72 void DeSerializeTextJSON(
const Json::Value & jsonValue)
CISST_THROW(std::runtime_error);
96 data.SerializeBinary(outputStream);
99 data.DeSerializeBinary(inputStream, localFormat, remoteFormat);
102 data.SerializeText(outputStream, delimiter);
105 data.DeSerializeText(inputStream, delimiter);
117 return data.ScalarDescription(index, userDescription);
120 return data.Scalar(index);
124 outputStream << cmnData<prmKeyValue >::HumanReadable(data);
128template <>
void CISST_EXPORT cmnDataJSON<prmKeyValue >::SerializeText(
const prmKeyValue & data, Json::Value & jsonValue);
static void DeSerializeText(DataType &data, std::istream &inputStream, const char delimiter=',') CISST_THROW(std
Definition prmKeyValue.h:104
static double Scalar(const DataType &data, const size_t index) CISST_THROW(std
Definition prmKeyValue.h:119
static std::string SerializeDescription(const DataType &data, const char delimiter, const std::string &userDescription)
Definition prmKeyValue.h:92
static std::string HumanReadable(const DataType &data)
Definition prmKeyValue.h:107
static std::string ScalarDescription(const DataType &data, const size_t index, const std::string &userDescription="") CISST_THROW(std
Definition prmKeyValue.h:116
static void DeSerializeBinary(DataType &data, std::istream &inputStream, const cmnDataFormat &localFormat, const cmnDataFormat &remoteFormat) CISST_THROW(std
Definition prmKeyValue.h:98
static void Copy(DataType &data, const DataType &source)
Definition prmKeyValue.h:89
static void SerializeBinary(const DataType &data, std::ostream &outputStream) CISST_THROW(std
Definition prmKeyValue.h:95
prmKeyValue DataType
Definition prmKeyValue.h:88
@ IS_SPECIALIZED
Definition prmKeyValue.h:87
static size_t ScalarNumber(const DataType &data)
Definition prmKeyValue.h:113
static void SerializeText(const DataType &data, std::ostream &outputStream, const char delimiter=',') CISST_THROW(std
Definition prmKeyValue.h:101
static bool ScalarNumberIsFixed(const DataType &data)
Definition prmKeyValue.h:110
Definition cmnDataFunctions.h:51
Definition mtsGenericObjectProxy.h:376
Definition prmKeyValue.h:32
void DeSerializeText(std::istream &inputStream, const char delimiter=',') CISST_THROW(std std::string HumanReadable(void) const
Definition prmKeyValue.h:65
void DeSerializeRaw(std::istream &inputStream)
void SerializeRaw(std::ostream &outputStream) const
void ToStreamRaw(std::ostream &outputStream, const char delimiter=' ', bool headerOnly=false, const std::string &headerPrefix="") const
bool ScalarNumberIsFixed(void) const
std::string Value
Definition prmKeyValue.h:45
void Copy(const prmKeyValue &source)
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 prmKeyValue.h:63
prmKeyValue(const prmKeyValue &other)
size_t ScalarNumber(void) const
prmKeyValue(const std::string &newKey, const std::string &newValue)
void ToStream(std::ostream &outputStream) const
std::string Key
Definition prmKeyValue.h:42
Class registration macros.
#define CMN_DECLARE_SERVICES_INSTANTIATION(className)
Definition cmnClassRegisterMacros.h:199
Defines cmnClassServices.
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::ostream & operator<<(std::ostream &outputStream, const prmKeyValue &data)
Definition prmKeyValue.h:123
mtsGenericObjectProxy< prmKeyValue > prmKeyValueProxy
Definition prmKeyValue.h:78
ThisType & operator=(const vctDynamicConstMatrixBase< __matrixOwnerType, __elementType > &otherMatrix)
Definition vctDynamicMatrix.h:255