Module optseq2 :: Class Mode
[hide private]
[frames] | no frames]

Class Mode

source code

Instance Methods [hide private]
 
__init__(self, name='', duration=0)
OptSeq mode class.
source code
 
__str__(self) source code
 
addBreak(self, start=0, finish=0, maxtime='inf')
Sets breakable information to the mode.
source code
 
addParallel(self, start=1, finish=1, maxparallel='inf')
Sets parallel information to the mode.
source code
 
addResource(self, resource, requirement={}, rtype=None)
Adds a resource to the mode.
source code
Method Details [hide private]

__init__(self, name='', duration=0)
(Constructor)

source code 

OptSeq mode class.

  • Arguments:
    • name: Name of mode (sub-activity). Remark that strings in OptSeq are restricted to a-z, A-Z, 0-9,[],_ and @. Also you cannot use "dummy" for the name of a mode.
    • duration(optional): Processing time of mode. Default=0.
  • Attbibutes:
    • requirement: Dictionary that maps a pair of resource name and resource type (rtype) to requirement dictionary. Requirement dictionary maps intervals (pairs of start time and finish time) to amounts of requirement. Resource type (rtype) is None (standard resource type), "break" or "max."
    • breakable: Dictionary that maps breakable intervals to maximum brek times.
    • paralel: Dictionary that maps parallelable intervals to maximum parallel numbers.

addBreak(self, start=0, finish=0, maxtime='inf')

source code 

Sets breakable information to the mode.

  • Arguments:
    • start(optional): Earliest break time. Non-negative integer. Default=0.
    • finish(optional): Latest break time. Non-negative integer or "inf." Default=0. Interval (start,finish) defines a possible break interval.
    • maxtime(optional): Maximum break time. Non-negative integer or "inf." Default="inf."
  • Example usage:
    >>> mode.addBreak(0,10,1}

    defines a break between (0,10) for one period.

addParallel(self, start=1, finish=1, maxparallel='inf')

source code 

Sets parallel information to the mode.

  • Arguments:
    • start(optional): Smallest job index executable in parallel. Positive integer. Default=1.
    • finish(optional): Largest job index executable in parallel. Positive integer or "inf." Default=1.
    • maxparallel(optional): Maximum job numbers executable in parallel. Non-negative integer or "inf." Default="inf."
  • Example usage:
    >>> mode.addParallel(1,1,2}

addResource(self, resource, requirement={}, rtype=None)

source code 

Adds a resource to the mode.

  • Arguments:
    • resurce: Resource object to be added to the mode.
    • requirement: Dictionary that maps intervals (pairs of start time and finish time) to amounts of requirement.
    • rtype (optional): Type of resource to be added to the mode. None (standard resource type; default), "break" or "max."
  • Example usage:
    >>> mode.addResource(worker,{(0,10):1})

    defines worker resource that uses 1 unit for 10 periods.

    >>> mode.addResource(machine,{(0,"inf"):1},"break")

    defines machine resource that uses 1 unit during break periods.

    >>> mode.addResource(machine,{(0,"inf"):1},"max")

    defines machine resource that uses 1 unit during parallel execution.