TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

interface IConfigScope in Tinman.Core.Config

An IConfigScope represents a set of variables.

interface IConfigScope extends IConfigValueBag
  base of ConfigScope

Remarks

The set of existing local variables is exposed via the IConfigValueBag base interface. New variables cannot be added to the scope but variable values can be set freely.

Attributes

Count

The number of named objects in the bag.

property Count { get }
type int32
value [>=0] The number of named objects.
inherited IConfigTypeBag.Count

Names

The names of all objects in the bag.

property Names { get }
type IBagConst<string>
value [not-null] The object names.
inherited IConfigTypeBag.Names

Version

Returns the current version of object.

property Version { get }
type int32
value The current version number.
inherited IVersioned.Version

Remarks:

For each modification, the version is incremented by at least one.

Extensions

SetVariable

Sets a variable value in this scope.

method SetVariable (string name, bool value)
params name [not-empty] The variable name.
  value The variable value.

Exceptions:


Sets a variable value in this scope.

method SetVariable (string name, float64 value)
params name [not-empty] The variable name.
  value The variable value.

Exceptions:


Sets a variable value in this scope.

method SetVariable (string name, string value)
params name [not-empty] The variable name.
  value The variable value.

Exceptions:


Sets a variable value in this scope.

method SetVariable (string name, Path value)
params name [not-empty] The variable name.
  value The variable value.

Exceptions:

Methods

Contains

Checks if this bag contains an object of the given name.

method Contains (string name)
type bool
params name [not-null] The name.
returns true if the bag contains an object named name, false if it does not.
inherited IConfigTypeBag.Contains

GetDomain

Looks in the config domain of this bag and tries to find the bag of the given name.

method GetDomain (string name)
type IConfigValueBag
params name Name of the bag to find or null to return this bag.
returns [not-null] The type bag. Will be empty if not found.
inherited IConfigTypeBag.GetDomain

GetMemberNull

Returns the ConfigMember which corresponds to the given named config object.

method GetMemberNull (string name)
type ConfigMember
params name [not-null] The name.
returns The ConfigMember or null.
inherited IConfigValueBag.GetMemberNull

GetTypeNull

Returns the config type that is associated with the given name, for example the type of a script variable.

method GetTypeNull (string name)
type ConfigType
params name [not-null] The name.
returns The associated config type of null if not found.
inherited IConfigTypeBag.GetTypeNull

Exceptions:

GetValueNull

Returns the config value that has the given name.

method GetValueNull (string name, ConfigValue[] arguments = null)
type ConfigValue
params name [not-null] The name.
  arguments Optional arguments for function call. If null, a field value is accessed. When not null, a function call is performed. Defaults to null.
returns The object or null if there is no object named name.
inherited IConfigValueBag.GetValueNull

Exceptions:

ResolveTypeNull

Tries to resolve the given incomplete name of a config type, using some additional information from the scope (for example using directives).

method ResolveTypeNull (string name)
type ConfigType
params name [not-empty] The incomplete config type name.
returns The config type or null.

See also:

ConfigType.GetNull

SetVariable

Sets a variable value in this scope.

method SetVariable (string name, ConfigValue value)
params name [not-empty] The variable name.
  value [not-null] The variable value.

Exceptions: