Grail (C#)  1.3.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
Grail.Planners.ParametrizedObject Class Reference

The base class representing parametrized objects used by the planning algorithm More...

Inheritance diagram for Grail.Planners.ParametrizedObject:

Public Member Functions

void MergeParameters (ParametrizedObject other)
 Adds other parameters to own, replacing parameter with other in case of conflict More...
 
int GetParametersSize ()
 
Returns
The number of parameters assigned to this object

 
bool Contains (string name)
 
Returns
true if the object contains a parameter with the given name, false otherwise

 
void SetParameter< ParameterType > (string name, ParameterType value)
 Sets a value of a parameter identified by the given name More...
 
ParameterType GetParameterValue< ParameterType > (string name)
 Fetches the value of a parameter identified with the given name as a given ParameterType. More...
 
bool CollectionContains (string collectionName, int objectIndex)
 
void AddCollection (string collectionName)
 Creates a named collection object, which can be used to group many IDs of objects together.
The name should be unique or you will otherwise override an existing collection. More...
 
SortedSet< int > GetCollection (string collectionName)
 
bool HasEqualParams (ParametrizedObject other)
 
Returns
c>true if the other object contains identical set of parameters (including the contents of collections)

 

Protected Member Functions

 ParametrizedObject (ParametrizedObject other)
 

Protected Attributes

Dictionary< string, ObjectParameterparameters
 
Dictionary< string, SortedSet< int > > indexCollections
 

Detailed Description

The base class representing parametrized objects used by the planning algorithm

Member Function Documentation

◆ AddCollection()

void Grail.Planners.ParametrizedObject.AddCollection ( string  collectionName)
inline

Creates a named collection object, which can be used to group many IDs of objects together.
The name should be unique or you will otherwise override an existing collection.

Parameters
collectionNameThe name of the collection that will be created.

◆ CollectionContains()

bool Grail.Planners.ParametrizedObject.CollectionContains ( string  collectionName,
int  objectIndex 
)
inline
Parameters
collectionNameCollection to check. See AddCollection.
objectIndexThe ID of an object.
Returns
true if the object with the given ID is present in the given collection

◆ GetCollection()

SortedSet<int> Grail.Planners.ParametrizedObject.GetCollection ( string  collectionName)
inline
Parameters
collectionNameThe name of the collection to retrieve. See AddCollection.
Returns
The collection with the given name or null if such does not exist.

◆ GetParameterValue< ParameterType >()

ParameterType Grail.Planners.ParametrizedObject.GetParameterValue< ParameterType > ( string  name)
inline

Fetches the value of a parameter identified with the given name as a given ParameterType.

Parameters
name
Template Parameters
ParameterType
Returns

◆ MergeParameters()

void Grail.Planners.ParametrizedObject.MergeParameters ( ParametrizedObject  other)
inline

Adds other parameters to own, replacing parameter with other in case of conflict

Parameters
otherObject to merge parameters from

◆ SetParameter< ParameterType >()

void Grail.Planners.ParametrizedObject.SetParameter< ParameterType > ( string  name,
ParameterType  value 
)
inline

Sets a value of a parameter identified by the given name

Parameters
name
value
Template Parameters
ParameterTypeHas to implement IComparable interface
Type Constraints
ParameterType :IComparable 

The documentation for this class was generated from the following file: