Class AbstractSimObjFactory<Obj extends DramaSimObject>

All Implemented Interfaces:
Cloneable

public abstract class AbstractSimObjFactory<Obj extends DramaSimObject> extends SimObjectFactory<AbstractSimObjFactory<Obj>,DramaSimulation,Obj>
Simulation factory for additional simulation objects. This class is provided for convenience.

Generally, there will be a class hierarchy of abstract factories matching the class hierarchy for subclasses of DramaSimObject, each responsible for providing parameters for the corresponding DramaSimObject subclass, plus a factory that is not abstract for each class that can be created.

The parameters inherited from superclasses are:

  • "timeline" - an integer-keyed set of values that define changes in the object's configuration. Subclasses may provide additional parameters. The default parameters are:
    • "timeline.time" - the time at which timeline parameters are to change. This parameter must be provided if a timeline entry exists. The units are those used by the double-precision time unit for the simulation (for animations, this is generally seconds).
    • "timeline.traceSetMode" - indicates how the parameter "timeline.traceSets" is interpreted. the values are enumeration constants of type TraceSetMode and are used as follows:
      • KEEP - keep the existing trace sets, adding additional ones specified by the parameter "timeline.traceSets".
      • REMOVE - remove the trace sets specified by the parameter "timeline.traceSets".
      • REPLACE - remove all existing trace sets and replace those with the ones specified by the timeline.traceSets parameter.
    • "timeline.traceSets" - a parameter representing a set of TraceSet objects (the three-argument 'add' method is used to add entries).
  • "traceSets" - a set of TraceSets a SimObject will use for tracing. One should use the add and remove factory methods as this parameter refers to a set of values.
  • Constructor Details

    • AbstractSimObjFactory

      protected AbstractSimObjFactory(DramaSimulation sim)
      Constructor. Subclasses must call this constructor.
      Parameters:
      sim - the simulation