Interface definition for a property list.
More...
#include <vector>
#include <string>
#include <iostream>
#include <sstream>
#include <typeinfo>
#include "simgear/compiler.h"
#include "JSBSim_API.h"
#include <simgear/structure/SGReferenced.hxx>
#include <simgear/structure/SGSharedPtr.hxx>
Go to the source code of this file.
|
struct | Compare |
|
struct | disable_if< Cond, T > |
|
struct | disable_if_c< B, T > |
|
struct | disable_if_c< true, T > |
|
struct | enable_if< Cond, T > |
|
struct | enable_if_c< B, T > |
|
struct | enable_if_c< false, T > |
|
struct | Hash |
|
class | SGPropertyChangeCallback< T > |
| Convenience class for change listener callbacks without creating a derived class implementing a "valueChanged" method. More...
|
|
class | SGPropertyChangeListener |
| The property change listener interface. More...
|
|
class | SGPropertyNode |
| A node in a property tree. More...
|
|
class | SGRaw |
| Base class for SGRawValue classes that holds no type information. More...
|
|
class | SGRawBase< T, 0 > |
|
class | SGRawBase< T, 1 > |
|
class | SGRawExtended |
|
class | SGRawValue< T > |
| Abstract base class for a raw value. More...
|
|
class | SGRawValueContainer< T > |
| A raw value that contains its value. More...
|
|
class | SGRawValueFunctions< T > |
| A value managed through static functions. More...
|
|
class | SGRawValueFunctionsIndexed< T > |
| An indexed value bound to static functions. More...
|
|
class | SGRawValueMethods< C, T > |
| A value managed through an object and access methods. More...
|
|
class | SGRawValueMethodsIndexed< C, T > |
| An indexed value managed through an object and access methods. More...
|
|
class | SGRawValuePointer< T > |
| A raw value bound to a pointer. More...
|
|
|
namespace | simgear |
| Utility function for creation of a child property node using a relative path.
|
|
namespace | simgear::props |
| Property value types.
|
|
|
enum | Type {
NONE = 0
, ALIAS
, BOOL
, INT
,
LONG
, FLOAT
, DOUBLE
, STRING
,
UNSPECIFIED
, EXTENDED
, VEC3D
, VEC4D
} |
| The possible types of an SGPropertyNode. More...
|
|
|
| DEFINTERNALPROP (bool, BOOL) |
|
| DEFINTERNALPROP (const char *, STRING) |
|
| DEFINTERNALPROP (const char[], STRING) |
|
| DEFINTERNALPROP (double, DOUBLE) |
|
| DEFINTERNALPROP (float, FLOAT) |
|
| DEFINTERNALPROP (int, INT) |
|
| DEFINTERNALPROP (long, LONG) |
|
template<typename T > |
T | getValue (const SGPropertyNode *) |
|
template<> |
bool | getValue< bool > (const SGPropertyNode *node) |
|
template<> |
const char * | getValue< const char * > (const SGPropertyNode *node) |
|
template<> |
double | getValue< double > (const SGPropertyNode *node) |
|
template<> |
float | getValue< float > (const SGPropertyNode *node) |
|
template<> |
int | getValue< int > (const SGPropertyNode *node) |
|
template<> |
long | getValue< long > (const SGPropertyNode *node) |
|
template<> |
std::string | getValue< std::string > (const SGPropertyNode *node) |
|
size_t | hash_value (const SGPropertyNode &node) |
|
SGPropertyNode * | makeChild (SGPropertyNode *parent, const char *name, int index=0) |
| Utility function for creation of a child property node.
|
|
template<typename StringType > |
SGPropertyNode * | makeNode (SGPropertyNode *parent, const StringType &name) |
|
template<typename T > |
T | parseString (const std::string &str) |
| Parse a string as an object of a given type.
|
|
template<typename T > |
std::istream & | readFrom (std::istream &stream, T &result) |
|
bool | setValue (SGPropertyNode *node, bool value) |
|
bool | setValue (SGPropertyNode *node, const char *value) |
|
bool | setValue (SGPropertyNode *node, const std::string &value) |
|
bool | setValue (SGPropertyNode *node, double value) |
|
bool | setValue (SGPropertyNode *node, float value) |
|
bool | setValue (SGPropertyNode *node, int value) |
|
bool | setValue (SGPropertyNode *node, long value) |
|
Interface definition for a property list.
Started Fall 2000 by David Megginson, david.nosp@m.@meg.nosp@m.ginso.nosp@m.n.co.nosp@m.m This code is released into the Public Domain.
See props.html for documentation [replace with URL when available].
Definition in file props.hxx.
◆ DEFINTERNALPROP
#define DEFINTERNALPROP |
( |
|
TYPE, |
|
|
|
PROP |
|
) |
| |
Value:template<> \
struct PropertyTraits<TYPE> \
{ \
static const Type type_tag = PROP; \
enum { Internal = 1 }; \
}
Definition at line 182 of file props.hxx.
185{ \
186 static const Type type_tag = PROP; \
187 enum { Internal = 1 }; \
188}
Type
The possible types of an SGPropertyNode.
◆ PROPS_STANDALONE
#define PROPS_STANDALONE 1 |
◆ SG_ALERT
◆ SG_GENERAL
◆ SG_LOG
#define SG_LOG |
( |
|
type, |
|
|
|
level, |
|
|
|
message |
|
) |
| (type) ? (std::cerr <<message << endl) : (std::cout <<message << endl) |
◆ SG_WARN
◆ SGConstPropertyNode_ptr
◆ SGPropertyNode_ptr
◆ getValue< bool >()
Definition at line 1847 of file props.hxx.
bool getBoolValue() const
Get a bool value for this node.
◆ getValue< const char * >()
Definition at line 1868 of file props.hxx.
1869{
1871}
const char * getStringValue() const
Get a string value for this node.
◆ getValue< double >()
Definition at line 1862 of file props.hxx.
1863{
1865}
double getDoubleValue() const
Get a double value for this node.
◆ getValue< float >()
Definition at line 1856 of file props.hxx.
1857{
1859}
float getFloatValue() const
Get a float value for this node.
◆ getValue< int >()
Definition at line 1850 of file props.hxx.
int getIntValue() const
Get an int value for this node.
◆ getValue< long >()
Definition at line 1853 of file props.hxx.
long getLongValue() const
Get a long int value for this node.
◆ getValue< std::string >()
◆ makeChild()
Utility function for creation of a child property node.
Definition at line 2039 of file props.hxx.
2041{
2042 return parent->
getChild(name, index,
true);
2043}
SGPropertyNode * getChild(int position)
Get a child node by position (NOT index).
◆ setValue() [1/7]
Definition at line 1879 of file props.hxx.
1880{
1882}
bool setBoolValue(bool value)
Set a bool value for this node.
◆ setValue() [2/7]
Definition at line 1904 of file props.hxx.
1905{
1907}
bool setStringValue(const char *value)
Set a string value for this node.
◆ setValue() [3/7]
◆ setValue() [4/7]
Definition at line 1899 of file props.hxx.
1900{
1902}
bool setDoubleValue(double value)
Set a double value for this node.
◆ setValue() [5/7]
Definition at line 1894 of file props.hxx.
1895{
1897}
bool setFloatValue(float value)
Set a float value for this node.
◆ setValue() [6/7]
Definition at line 1884 of file props.hxx.
1885{
1887}
bool setIntValue(int value)
Set an int value for this node.
◆ setValue() [7/7]
Definition at line 1889 of file props.hxx.
1890{
1892}
bool setLongValue(long value)
Set a long int value for this node.