Class GenericCondFactory<OF extends GenericCondFactory<OF,S,A,C,D,DM,F,G,Obj>,S extends GenericSimulation<S,A,C,D,DM,F,G>,A extends GenericActor<S,A,C,D,DM,F,G>,C extends GenericCondition<S,A,C,D,DM,F,G>,D extends GenericDomain<S,A,C,D,DM,F,G>,DM extends GenericDomainMember<S,A,C,D,DM,F,G>,F extends GenericFactory<S,A,C,D,DM,F,G>,G extends GenericGroup<S,A,C,D,DM,F,G>,Obj extends C>

java.lang.Object
org.bzdev.obnaming.NamedObjectFactory<F,Simulation,SimObject,OBJ>
org.bzdev.devqsim.SimObjectFactory<OF,S,Obj>
org.bzdev.drama.generic.GenericCondFactory<OF,S,A,C,D,DM,F,G,Obj>
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
AbstractConditionFactory

public abstract class GenericCondFactory<OF extends GenericCondFactory<OF,S,A,C,D,DM,F,G,Obj>,S extends GenericSimulation<S,A,C,D,DM,F,G>,A extends GenericActor<S,A,C,D,DM,F,G>,C extends GenericCondition<S,A,C,D,DM,F,G>,D extends GenericDomain<S,A,C,D,DM,F,G>,DM extends GenericDomainMember<S,A,C,D,DM,F,G>,F extends GenericFactory<S,A,C,D,DM,F,G>,G extends GenericGroup<S,A,C,D,DM,F,G>,Obj extends C> extends SimObjectFactory<OF,S,Obj>
Abstract class for Condition factories. This class is provided so that factories that create conditions can be coded in the same way as factories for other drama.generic objects by providing an analogous set of parameterized types as other factories in this package.

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

There are no factory parameters directly associated with this class. 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

    • GenericCondFactory

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