This is the documentation for Enlighten.
class Geo GeoVariant
class Geo::GeoVariant
Variant class for storing name/value pairs in a map, where the value is a subset of common value types.
The variant is an immutable object, akin to C# style strings.
Classes
Name | Description |
---|---|
Geo::GeoVariant::LinkData | GUID class for representing links. |
Geo::GeoVariant::UrlData | String class for representing URLs (e.g. file paths). |
Functions
Name | Description |
---|---|
FromStringRepresentation(Type, const char *) | Create a new GeoVariant from the string representation. |
GeoVariant(const GeoVariant &) | Copy constructor (we can't use the compiler-generated one as we may need to copy the heap data if this is a Url GeoVariant). |
GeoVariant(Type) | Construct a GeoVariant of a given type, with a default value. |
GeoVariant(const LinkData &) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(const UrlData &) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(const Geo::Matrix &) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(const v128 &) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(const GeoString< char > &) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(const char *) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(bool) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(float) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(u64) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(s64) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(u32) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(s32) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(s16) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(u16) | Construct a GeoVariant of the given type, with the specified value. |
GeoVariant(GeoGuid) | Construct a GeoVariant of the given type, with the specified value. |
GetStringRepresentation() | Convert the value to a string, for use when serialising or presenting in a dialog. |
GetType() | Returns the type of this GeoVariant. |
Load(IGeoInputStream &) | Binary serialisation functions. |
operator!=(const GeoVariant &) | Comparison operators. |
operator=(const GeoVariant &) | Assignment. |
operator==(const GeoVariant &) | Comparison operators. |
Save(IGeoStream &) | Binary serialisation functions. |
ToBool() | Conversion to the underlying type. |
ToCString() | Conversion to the underlying type. |
ToFloat() | Conversion to the underlying type. |
ToGuid() | Conversion to the underlying type. |
ToInteger() | Conversion to the underlying type. |
ToInteger64() | Conversion to the underlying type. |
ToLink() | Conversion to the underlying type. |
ToMatrix() | Conversion to the underlying type. |
ToShort() | Conversion to the underlying type. |
ToUnsignedInteger() | Conversion to the underlying type. |
ToUnsignedInteger64() | Conversion to the underlying type. |
ToUnsignedShort() | Conversion to the underlying type. |
ToUrl() | Conversion to the underlying type. |
ToVector() | Conversion to the underlying type. |
Enums
Name | Description |
---|---|
Type | The possible data types that the GeoVariant can hold. |
Variables
Name | Description |
---|---|
const GeoVariant InvalidStatic | A single const invalid GeoVariant. |
static GeoVariant Geo::GeoVariant::FromStringRepresentation
public: GeoVariant FromStringRepresentation
(
Type type,
const char * value
)
Create a new GeoVariant from the string representation.
The function requires the type it will create and the new value. The conversion functions are not checked, so failure to convert will result in a GeoVariant of the correct type and a default value.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
const GeoVariant & rhs
)
Copy constructor (we can't use the compiler-generated one as we may need to copy the heap data if this is a Url GeoVariant).
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
Type t
)
Construct a GeoVariant of a given type, with a default value.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
const LinkData & x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
const UrlData & x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
const Geo::Matrix & x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
const v128 & x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
const GeoString< char > & x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
const char * x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
bool x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
float x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
u64 x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
s64 x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
u32 x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
s32 x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
s16 x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
u16 x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
Geo::GeoVariant::GeoVariant
public: GeoVariant
(
GeoGuid x
)
Construct a GeoVariant of the given type, with the specified value.
The various string representations are all internally converted to the utf8 String enum, truncation to 64 characters is silent and will not cause it to fail.
GeoString<char> Geo::GeoVariant::GetStringRepresentation
public: GeoString< char > GetStringRepresentation() const
Convert the value to a string, for use when serialising or presenting in a dialog.
Type Geo::GeoVariant::GetType
public: Type GetType() const
Returns the type of this GeoVariant.
bool Geo::GeoVariant::Load
public: bool Load
(
IGeoInputStream & stream
)
Binary serialisation functions.
bool Geo::GeoVariant::operator!=
public: bool operator!=
(
const GeoVariant & rhs
) const
Comparison operators.
GeoVariant& Geo::GeoVariant::operator=
public: GeoVariant & operator=
(
const GeoVariant & rhs
)
Assignment.
bool Geo::GeoVariant::operator==
public: bool operator==
(
const GeoVariant & rhs
) const
Comparison operators.
bool Geo::GeoVariant::Save
public: bool Save
(
IGeoStream & stream
) const
Binary serialisation functions.
bool Geo::GeoVariant::ToBool
public: bool ToBool() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
const char* Geo::GeoVariant::ToCString
public: const char * ToCString() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
float Geo::GeoVariant::ToFloat
public: float ToFloat() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
GeoGuid Geo::GeoVariant::ToGuid
public: GeoGuid ToGuid() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
s32 Geo::GeoVariant::ToInteger
public: s32 ToInteger() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
s64 Geo::GeoVariant::ToInteger64
public: s64 ToInteger64() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
LinkData Geo::GeoVariant::ToLink
public: LinkData ToLink() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
Geo::Matrix Geo::GeoVariant::ToMatrix
public: Geo::Matrix ToMatrix() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
s16 Geo::GeoVariant::ToShort
public: s16 ToShort() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
u32 Geo::GeoVariant::ToUnsignedInteger
public: u32 ToUnsignedInteger() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
u64 Geo::GeoVariant::ToUnsignedInteger64
public: u64 ToUnsignedInteger64() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
u16 Geo::GeoVariant::ToUnsignedShort
public: u16 ToUnsignedShort() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
UrlData Geo::GeoVariant::ToUrl
public: UrlData ToUrl() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
v128 Geo::GeoVariant::ToVector
public: v128 ToVector() const
Conversion to the underlying type.
Converting a GeoVariant containing type A to a different type will result in a default value. It will not follow C++ conversion rules (so if you ask for an Integer, and it contains a Short, you will get a 0 result).
Type
public: enum Type
{
Invalid = -1,
Bool,
Short,
UnsignedShort,
Integer,
UnsignedInteger,
Integer64,
UnsignedInteger64,
Float,
Guid,
String,
Vector,
Matrix,
Url,
Link
}
The possible data types that the GeoVariant can hold.
enumerators
Invalid | |
Bool | |
Short | |
UnsignedShort | |
Integer | |
UnsignedInteger | |
Integer64 | |
UnsignedInteger64 | |
Float | |
Guid | |
String | |
Vector | |
Matrix | |
Url | |
Link |