50#include <Pds/JsonElement>
67 std::map<std::string,Pds::JsonElement>
V;
222 template <
typename Datum>
223 bool Add(
const std::string &Label,
const Datum &data);
232 bool Add(
const std::string &Label,
const char *data);
260 std::string
GetType(
const std::string &Label)
const;
285 bool LabelIsOfType(
const std::string &Label,
const std::string &Type)
const ;
316 template <
typename Datum>
317 Datum &
In(std::string Label);
348 template <
typename Datum>
349 const Datum &
At(std::string Label)
const;
388 double &
Real(
const std::string &Label);
397 std::string &
String(
const std::string &Label);
415 std::vector<bool> &
ArrayB(
const std::string &Label);
424 std::vector<long int> &
ArrayI(
const std::string &Label);
433 std::vector<double> &
ArrayR(
const std::string &Label);
442 std::vector<std::string> &
ArrayS(
const std::string &Label);
451 std::vector<Pds::Json> &
ArrayJ(
const std::string &Label);
475 void Print(
bool last,
unsigned int Ntabs)
const;
482 void Print(
const std::string &str)
const;
510 bool Save(
const std::string &filepath)
const;
520 bool Load(
const std::string &filepath);
La clase tipo Pds::JsonElement . Esta clase genera un elemento de una estructura Json....
La clase tipo Pds::Json . Esta clase genera una estructura capaz de almacenar datos del formato Json....
std::map< std::string, Pds::JsonElement > V
bool SaveInStream(std::ofstream &myfile) const
Salva el objeto Json en un stream.
double & Real(const std::string &Label)
Retorna una referencia a un dato de tipo "Real" en el objeto de tipo Json.
std::vector< double > & ArrayR(const std::string &Label)
Retorna una referencia a un dato de tipo "ArrayR" en el objeto de tipo Json.
Json(const Pds::Json &J)
Crea un objeto de tipo Pds::Json copiando datos desde otro Json. Este es un Copy assignment construct...
std::string & String(const std::string &Label)
Retorna una referencia a un dato de tipo "String" en el objeto de tipo Json.
bool LoadFromString(const std::string &str)
std::string ToString(unsigned int Ntabs=0) const
Retorna un std::string con texto en formato Json.
Json()
Crea un objeto de tipo Pds::Json vacio.
bool LabelIsOfType(const std::string &Label, const std::string &Type) const
Dada una etiqueta, retorna true si el dato con etiqueta Label es de tipo Type o false si no.
std::vector< long int > & ArrayI(const std::string &Label)
Retorna una referencia a un dato de tipo "ArrayI" en el objeto de tipo Json.
Datum & In(std::string Label)
Retorna una referencia a un dato de tipo "Datum" en el objeto de tipo Json.
std::vector< std::string > & ArrayS(const std::string &Label)
Retorna una referencia a un dato de tipo "ArrayS" en el objeto de tipo Json.
void Print(const std::string &str) const
Retorna un std::string con texto en formato Json.
bool Copy(const Pds::Json &J)
Copia en si mismo (A), el contenido de un objeto J. Este método es similar a usar el operador = ....
void Print(bool last, unsigned int Ntabs) const
Retorna un std::string con texto en formato Json.
Pds::Json & JsonChild(const std::string &Label)
Retorna una referencia a un dato de tipo "Json" en el objeto de tipo Json.
void Print(void) const
Retorna un std::string con texto en formato Json.
const Datum & At(std::string Label) const
Retorna una referencia no modificable a un dato de tipo "Datum" en el objeto de tipo Json.
Pds::JsonElement Get(const std::string &Label) const
Retorna un elemento en una estructura de tipo Json.
std::vector< Pds::Json > & ArrayJ(const std::string &Label)
Retorna una referencia a un dato de tipo "ArrayJ" en el objeto de tipo Json.
std::vector< bool > & ArrayB(const std::string &Label)
Retorna una referencia a un dato de tipo "ArrayB" en el objeto de tipo Json.
bool & Boolean(const std::string &Label)
Retorna una referencia a un dato de tipo "Boolean" en el objeto de tipo Json.
std::string GetType(const std::string &Label) const
Retorna el tipo del elemento en una estructura de tipo Json.
bool Load(const std::string &filepath)
bool IsEmpty(void) const
Verifica si el objeto Json es nulo, es decir sin elementos.
bool Add(const std::string &Label, const Datum &data)
Agrega un elemento de tipo Datum a la estructura Json.
Pds::Json & operator=(const Pds::Json &J)
Copia en si mismo (A), un objeto J. Este operador es similar al método Copy(). No importa el tamaño d...
bool Add(const std::string &Label, const Pds::JsonElement &E)
Agrega un elementos Json a la estructura Json.
bool Save(const std::string &filepath) const
Salva el objeto Json en un archivo.
bool Add(const std::string &Label, const char *data)
Agrega un elemento de tipo const char * a la estructura Json.
void MakeEmpty(void)
Libera los datos internos del objeto y lo convierte en uno nulo, es decir sin elementos Json.
long int & Integer(const std::string &Label)
Retorna una referencia a un dato de tipo "Integer" en el objeto de tipo Json.
Nombre de espacio para Pds (Procesamiento Digital de Senales)