[This is preliminary documentation and is subject to change.]

This is parameters class for the MotivationalSubsystem class

Namespace: Clarion.Framework
Assembly: ClarionLibrary (in ClarionLibrary.dll) Version: 6.1.1.0 (6.1.1.0)

Syntax

C#
public class MotivationalSubsystemParameters

Remarks

This class contains all of the parameters that may be used by the MotivationalSubsystem class.

Note

The parameters classes can be found throughout the Clarion Library whenever a class contains parameters that may be set by a user. This concept was implemented to allow for some "special capabilities" and also to clean-up/streamline parameter usage throughout the system. The parameters classes enable parameters to be adjusted both locally and globally. In general, global parameter changes are performed statically through the GlobalParameters property and local parameter changes are performed on single instances through the Parameters property.

Examples demonstrating how parameter adjustments may be performed using both methods can be found in the examples section.
Note
The Clarion subsystems are initialized at the same time that an agent is initialized. Therefore, global parameter settings for the MS are ONLY applicable prior to the initialization of an instance of an agent. During the initialization process, the global parameter settings are used to set the "default" values of the local parameters for the MS. Once initialized, the MS will only use the local parameters. Therefore, global parameter changes SHOULD ALWAYS be performed BEFORE instances of an agent are initialized.

Copyright 2011. Nicholas Wilson

Examples

Suppose you wanted to change the "GOAL_STRUCTURE_BEHAVIOR_OPTION" parameter for a single instance of an agent. This constitutes a "local" parameter change and is accomplished as follows:
CopyC#
Agent John;

// Elided code containing the initialization of John using the <see cref="T:Clarion.AgentInitializer" />

John.MS.Parameters.GOAL_STRUCTURE_BEHAVIOR_OPTION = MotivationalSubsystem.GoalStructureBehaviorOptions.LIST;     //Note that the goal structure is already set to behave like
                                                                                                                 //a list by default, so this doesn't actually change anything
Now, suppose instead that you wanted to change the "GOAL_STRUCTURE_BEHAVIOR_OPTION" parameter for all instances of all agents. This constitutes a "global" (or static, in programming terms) parameter change and is accomplished as follows:
CopyC#
MotivationalSubsystem.GlobalParameters.GOAL_STRUCTURE_BEHAVIOR_OPTION = MotivationalSubsystem.GoalStructureBehaviorOptions.STACK;

// Elided code containing the initialization of various agent instances (as was demonstrated above)

Inheritance Hierarchy

System..::..Object
  Clarion.Framework..::..MotivationalSubsystem..::..MotivationalSubsystemParameters

See Also