Overview | Package | Class | Tree | Deprecated | Index | Help
| ContactCenters V. 0.9.9.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## umontreal.iro.lecuyer.contactcenters.ctmc
Class AbstractCallCenterCTMCSimMP

    java.lang.Object
      umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterInfo
          umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterEval
              umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterSim
                  umontreal.iro.lecuyer.contactcenters.ctmc.AbstractCallCenterCTMCSimMP

All Implemented Interfaces:
  ContactCenterEval, ContactCenterInfo, ContactCenterSim, ContactCenterSimWithObservations

Direct Known Subclasses:
  BasicCallCenterCTMCSimMP

    public abstract class AbstractCallCenterCTMCSimMP

extends AbstractContactCenterSim
implements ContactCenterSimWithObservations

Field Summary
`protected double[][]` | `awt`
`protected CallCenter` | `cc`
`protected CallCenterStat[]` | `ccStat`
`protected CallCenterStatMP` | `ccStatMP`
`protected CallCenterCounters[]` | `counters`
`protected CallCenterCounters` | `countersG`
`protected CallCenterCTMC[]` | `ctmc`
`protected double[]` | `jumpRate`
`protected RateChangeTransitions` | `rateChange`
`protected CTMCRepSimParams` | `simParams`
`protected int[]` | `startingTransition`
`protected ContactTrace` | `trace`

Fields inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterSim
`autoResetStartStream, seqSampEachEval`

Constructor Summary
`AbstractCallCenterCTMCSimMP(CallCenter cc, CTMCRepSimParams simParams)`
`AbstractCallCenterCTMCSimMP(CallCenterParams ccParams, CTMCRepSimParams simParams)`
`AbstractCallCenterCTMCSimMP(CallCenterParams ccParams, CTMCRepSimParams simParams, RandomStreams streams)`

Method Summary
`protected void` | `addObs()`
`void` | `addTransitionListener(TransitionListener listener)`
`void` | `clearTransitionListeners()`
`void` | `eval()` Performs a simulation to evaluate the performance measures.
`void` | `formatReport()`
`String` | `getAgentGroupName(int i)` Returns the name associated with the agent group identifier `i`.
`Map<String,String>` | `getAgentGroupProperties(int i)` This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for agent groups instead of contact types.
`int` | `getCompletedSteps()` Returns the number of completed steps for the simulation.
`double` | `getConfidenceLevel()` Returns the confidence level of the intervals output by `ContactCenterEval.formatStatistics()`.
`String` | `getContactTypeName(int k)` Returns the name associated with the contact type `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumContactTypes()`.
`Map<String,String>` | `getContactTypeProperties(int k)` Returns the properties associated with contact type `k`.
`CallCenterCTMC` | `getCTMC(int p)`
`TimeUnit` | `getDefaultUnit()` Returns the time unit in which output performance measures representing times are expressed.
`Object` | `getEvalOption(EvalOptionType option)` Returns the current value of the evaluation option `option`.
`EvalOptionType[]` | `getEvalOptions()` Returns the array of the evaluation option types supported by the implementing object.
`String` | `getMainPeriodName(int mp)` Returns the name corresponding to the main period `mp`.
`String` | `getMatrixOfAWTName(int m)` Returns the name associated with the matrix of AWTs with index `m`.
`MatrixOfStatProbes<?>` | `getMatrixOfStatProbes(PerformanceMeasureType m)` Returns the matrix of statistical probes used to manage observations for estimating the performance measures in group `m`.
`int` | `getNumAgentGroups()` Returns the total number of agent groups supported by this contact center.
`int` | `getNumContactTypes()` Returns the total number of contact types supported by this contact center.
`abstract double[]` | `getNumExpectedTransitions()`
`int` | `getNumInContactTypes()` Returns the total number of inbound contact types for this contact center.
`int` | `getNumMainPeriods()` Returns the number of main periods used for evaluation, as defined in `PeriodChangeEvent`.
`int` | `getNumMatricesOfAWT()` Returns the number of matrices containing acceptable waiting times, for estimating service levels.
`int` | `getNumOutContactTypes()` Returns the total number of outbound contact types for this contact center.
`int` | `getNumWaitingQueues()` Returns the total number of waiting queues capable of storing contacts.
`double[]` | `getObs(PerformanceMeasureType pm, int row, int column)` Returns an array containing the observations for a performance measure of type `pm`, identified by row `row` and column `column`.
`PerformanceMeasureType[]` | `getPerformanceMeasures()` Returns an array containing all the groups of performance measures this object can estimate.
`int` | `getQueueCapacity()`
`ReportParams` | `getReportParams()` Returns the parameters for reports formatted by `ContactCenterEval.formatStatistics()`, or `ContactCenterEval.formatStatisticsExcel(WritableWorkbook)`.
`int` | `getRequiredNewSteps()`
`int[]` | `getStaffing()`
`int[][]` | `getStaffingMatrix()`
`CallCenterStatMP` | `getStat()`
`List<TransitionListener>` | `getTransitionListeners()`
`String` | `getWaitingQueueName(int q)` Returns the name of the waiting queue with index `q` used by the evaluation.
`Map<String,String>` | `getWaitingQueueProperties(int q)` This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for waiting queues instead of contact types.
`boolean` | `hasEvalOption(EvalOptionType option)` Determines if the evaluation option `option` is supported by the implemented system.
`protected void` | `initReplication(RandomStream stream1, int[] ntr)`
`protected void` | `initStat()`
`void` | `initTimer()`
`void` | `newSeeds()` Changes the seeds of the random number generators used during the simulation.
`void` | `notifyInit(int r, int mp, CallCenterCTMC ctmc1)`
`void` | `notifyTransition(int r, int mp, CallCenterCTMC ctmc1, TransitionType type)`
`int` | `numberObs(PerformanceMeasureType pm, int row, int column)` Returns the number of observations available for a performance measure of type `pm`, identified by row `row` and column `column`.
`void` | `removeTransitionListener(TransitionListener listener)`
`void` | `reset()` Resets this contact center evaluation system for new parameters.
`void` | `resetNextSubstream()` Calls `RandomStream.resetNextSubstream()` for all random streams used by the simulator.
`void` | `resetStartStream()` Calls `RandomStream.resetStartStream()` for all random streams used by the simulator.
`void` | `resetStartSubstream()` Calls `RandomStream.resetStartSubstream()` for all random streams used by the simulator.
`boolean` | `seemsUnstable()` Determines if the system seems to be unstable.
`void` | `setConfidenceLevel(double level)` Sets the level of confidence for the intervals output by `ContactCenterEval.formatStatistics()` to `level`.
`void` | `setEvalOption(EvalOptionType option, Object value)` Sets the evaluation option `option` to `value`.
`void` | `setQueueCapacity(int q)`
`void` | `setStaffing(int[] staffing)`
`void` | `setStaffingMatrix(int[][] staffing)`
`void` | `setStat(CallCenterStatMP ccStatMP)`
`abstract void` | `simulate(RandomStream stream1, int n)`

Methods inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterSim
`formatStatistics, formatStatisticsExcel, formatStatisticsLaTeX, getAutoResetStartStream, getConfidenceInterval, getConfidenceInterval, getMatrixOfFunctionOfMultipleMeansTallies, getMatrixOfTallies, getMax, getMin, getOneSimDone, getPerformanceMeasure, getSeqSampEachEval, getVariance, hasPerformanceMeasure, setAutoResetStartStream, setOneSimDone, setSeqSampEachEval`

Methods inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterEval
`getEvalInfo, isVerbose, setReportParams, setVerbose`

Methods inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterInfo
`getAgentGroupSegmentName, getAgentGroupSegmentProperties, getContactTypeSegmentName, getContactTypeSegmentProperties, getInContactTypeSegmentName, getInContactTypeSegmentProperties, getMainPeriodSegmentName, getNumAgentGroupSegments, getNumAgentGroupsWithSegments, getNumContactTypeSegments, getNumContactTypesWithSegments, getNumInContactTypeSegments, getNumInContactTypesWithSegments, getNumMainPeriodSegments, getNumMainPeriodsWithSegments, getNumOutContactTypeSegments, getNumOutContactTypesWithSegments, getNumWaitingQueueSegments, getNumWaitingQueuesWithSegments, getOutContactTypeSegmentName, getOutContactTypeSegmentProperties, getWaitingQueueSegmentName, getWaitingQueueSegmentProperties`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface umontreal.iro.lecuyer.contactcenters.app.ContactCenterSim
`getAutoResetStartStream, getConfidenceInterval, getMatrixOfFunctionOfMultipleMeansTallies, getMatrixOfTallies, getMax, getMin, getSeqSampEachEval, getVariance, setAutoResetStartStream, setSeqSampEachEval`

Methods inherited from interface umontreal.iro.lecuyer.contactcenters.app.ContactCenterEval
`formatStatistics, formatStatisticsExcel, formatStatisticsLaTeX, getEvalInfo, getPerformanceMeasure, hasPerformanceMeasure, isVerbose, setReportParams, setVerbose`

Methods inherited from interface umontreal.iro.lecuyer.contactcenters.app.ContactCenterInfo
`getAgentGroupSegmentName, getAgentGroupSegmentProperties, getContactTypeSegmentName, getContactTypeSegmentProperties, getInContactTypeSegmentName, getInContactTypeSegmentProperties, getMainPeriodSegmentName, getNumAgentGroupSegments, getNumAgentGroupsWithSegments, getNumContactTypeSegments, getNumContactTypesWithSegments, getNumInContactTypeSegments, getNumInContactTypesWithSegments, getNumMainPeriodSegments, getNumMainPeriodsWithSegments, getNumOutContactTypeSegments, getNumOutContactTypesWithSegments, getNumWaitingQueueSegments, getNumWaitingQueuesWithSegments, getOutContactTypeSegmentName, getOutContactTypeSegmentProperties, getWaitingQueueSegmentName, getWaitingQueueSegmentProperties`

Field Detail

### cc

    protected CallCenter cc

### ctmc

    protected CallCenterCTMC[] ctmc

### counters

    protected CallCenterCounters[] counters

### countersG

    protected CallCenterCounters countersG

### ccStat

    protected CallCenterStat[] ccStat

### ccStatMP

    protected CallCenterStatMP ccStatMP

### trace

    protected ContactTrace trace

### awt

    protected double[][] awt

### jumpRate

    protected double[] jumpRate

### startingTransition

    protected int[] startingTransition

### rateChange

    protected RateChangeTransitions rateChange

### simParams

    protected CTMCRepSimParams simParams

Constructor Detail

### AbstractCallCenterCTMCSimMP

    public AbstractCallCenterCTMCSimMP(CallCenterParams ccParams,
                                       CTMCRepSimParams simParams)
                                throws CallCenterCreationException,
                                       CTMCCreationException

Throws:
  `CallCenterCreationException`
  `CTMCCreationException`

### AbstractCallCenterCTMCSimMP

    public AbstractCallCenterCTMCSimMP(CallCenterParams ccParams,
                                       CTMCRepSimParams simParams,
                                       RandomStreams streams)
                                throws CallCenterCreationException,
                                       CTMCCreationException

Throws:
  `CallCenterCreationException`
  `CTMCCreationException`

### AbstractCallCenterCTMCSimMP

    public AbstractCallCenterCTMCSimMP(CallCenter cc,
                                       CTMCRepSimParams simParams)
                                throws CTMCCreationException

Throws:
  `CTMCCreationException`

Method Detail

### getStaffing

    public int[] getStaffing()

### setStaffing

    public void setStaffing(int[] staffing)

### getStaffingMatrix

    public int[][] getStaffingMatrix()

### setStaffingMatrix

    public void setStaffingMatrix(int[][] staffing)

### getQueueCapacity

    public int getQueueCapacity()

### setQueueCapacity

    public void setQueueCapacity(int q)

### getCTMC

    public CallCenterCTMC getCTMC(int p)

### initStat

    protected void initStat()

### getStat

    public CallCenterStatMP getStat()

### setStat

    public void setStat(CallCenterStatMP ccStatMP)

### initReplication

    protected void initReplication(RandomStream stream1,
                                   int[] ntr)

### addObs

    protected void addObs()

### formatReport

    public void formatReport()

### simulate

    public abstract void simulate(RandomStream stream1,
                                  int n)

### getNumExpectedTransitions

    public abstract double[] getNumExpectedTransitions()

### initTimer

    public void initTimer()

### getRequiredNewSteps

    public int getRequiredNewSteps()

### eval

    public void eval()

  Description copied from interface: `ContactCenterSim`
  Performs a simulation to evaluate the performance measures. Unless `ContactCenterSim.getAutoResetStartStream()` returns `false`, if `ContactCenterSim.eval()` is called multiple times without changing system parameters, `ContactCenterEval.getPerformanceMeasure(PerformanceMeasureType)` should return the same matrices of estimates after each call. This requires that random streams used for simulation be reset after each evaluation. Thus, before returning, this method should use `RandomStream.resetStartSubstream()` on all random streams in order to reset the seeds. It is also recommended to always use `RandomStream.resetNextSubstream()` for all random streams after any replication to improve synchronization of random streams.

  Specified by:
    `eval` in interface `ContactCenterEval`
  Specified by:
    `eval` in interface `ContactCenterSim`

### getCompletedSteps

    public int getCompletedSteps()

  Description copied from interface: `ContactCenterSim`
  Returns the number of completed steps for the simulation. When using independent replications, a step corresponds to a replication. When using batch means for stationary simulation, this corresponds to the number of terminated batches.

  Specified by:
    `getCompletedSteps` in interface `ContactCenterSim`
  Returns:
    the number of completed steps.

### getReportParams

    public ReportParams getReportParams()

  Description copied from interface: `ContactCenterEval`
  Returns the parameters for reports formatted by `ContactCenterEval.formatStatistics()`, or `ContactCenterEval.formatStatisticsExcel(WritableWorkbook)`. If no object containing report parameters is available, this method should create a new one using the default constructor of `ReportParams`.

  Specified by:
    `getReportParams` in interface `ContactCenterEval`
  Overrides:
    `getReportParams` in class `AbstractContactCenterEval`
  Returns:
    the printed statistics.

### getConfidenceLevel

    public double getConfidenceLevel()

  Description copied from interface: `ContactCenterSim`
  Returns the confidence level of the intervals output by `ContactCenterEval.formatStatistics()`. The initial confidence level is implementation-specific, and usually set by a constructor.

  Specified by:
    `getConfidenceLevel` in interface `ContactCenterSim`
  Returns:
    the level of confidence for the intervals.

### getMatrixOfStatProbes

    public MatrixOfStatProbes<?> getMatrixOfStatProbes(PerformanceMeasureType m)

  Description copied from interface: `ContactCenterSim`
  Returns the matrix of statistical probes used to manage observations for estimating the performance measures in group `m`. The particular subclass of the statistical probe matrix depends on the performance measure type only. For averages, this method must return a `MatrixOfTallies` object. For functions of multiple averages, e.g., ratios of averages, this must return a `MatrixOfFunctionOfMultipleMeansTallies`.

  Specified by:
    `getMatrixOfStatProbes` in interface `ContactCenterSim`
  Parameters:
    `m` - the group of performance measures of interest.
  Returns:
    the matrix of statistical probes.

### newSeeds

    public void newSeeds()

  Description copied from interface: `ContactCenterSim`
  Changes the seeds of the random number generators used during the simulation. When calling `ContactCenterSim.eval()` multiple times to perform a simulation, the results should be identical for the same values of parameters. If one requires the simulation to be performed with new random seeds, the random streams need to be reset. This can be done by calling `RandomStream.resetNextSubstream()` method on each `RandomStream` object associated with the simulator, or by creating new random streams.

  Specified by:
    `newSeeds` in interface `ContactCenterSim`

### resetNextSubstream

    public void resetNextSubstream()

  Description copied from interface: `ContactCenterSim`
  Calls `RandomStream.resetNextSubstream()` for all random streams used by the simulator.

  Specified by:
    `resetNextSubstream` in interface `ContactCenterSim`

### resetStartStream

    public void resetStartStream()

  Description copied from interface: `ContactCenterSim`
  Calls `RandomStream.resetStartStream()` for all random streams used by the simulator.

  Specified by:
    `resetStartStream` in interface `ContactCenterSim`

### resetStartSubstream

    public void resetStartSubstream()

  Description copied from interface: `ContactCenterSim`
  Calls `RandomStream.resetStartSubstream()` for all random streams used by the simulator.

  Specified by:
    `resetStartSubstream` in interface `ContactCenterSim`

### setConfidenceLevel

    public void setConfidenceLevel(double level)

  Description copied from interface: `ContactCenterSim`
  Sets the level of confidence for the intervals output by `ContactCenterEval.formatStatistics()` to `level`.

  Specified by:
    `setConfidenceLevel` in interface `ContactCenterSim`
  Parameters:
    `level` - the level of confidence of the intervals.

### getDefaultUnit

    public TimeUnit getDefaultUnit()

  Description copied from interface: `ContactCenterInfo`
  Returns the time unit in which output performance measures representing times are expressed. If this method returns `null`, performance measures representing time are output as any other performance measures; no time conversion can be performed or time unit displayed.

  Specified by:
    `getDefaultUnit` in interface `ContactCenterInfo`
  Returns:
    the default time unit.

### getEvalOption

    public Object getEvalOption(EvalOptionType option)

  Description copied from interface: `ContactCenterEval`
  Returns the current value of the evaluation option `option`. The class of the returned object must be assignable to the class given by `EvalOptionType.getType()`. If the option is not supported, this should throw a `NoSuchElementException`. This exception can be thrown if and only if `ContactCenterEval.hasEvalOption(umontreal.iro.lecuyer.contactcenters.app.EvalOptionType)` returns `false` for the given `option`.

  Specified by:
    `getEvalOption` in interface `ContactCenterEval`
  Parameters:
    `option` - the queried evaluation option.
  Returns:
    the current value of the option.

### getEvalOptions

    public EvalOptionType[] getEvalOptions()

  Description copied from interface: `ContactCenterEval`
  Returns the array of the evaluation option types supported by the implementing object. The evaluation options are the variable parameters of the contact center which can be changed between calls to `ContactCenterEval.eval()`. This should never return a `null` pointer; if no evaluation options are supported for some reasons, this should return an array with length 0.

  Specified by:
    `getEvalOptions` in interface `ContactCenterEval`
  Returns:
    the array of supported evaluation options.

### getNumAgentGroups

    public int getNumAgentGroups()

  Description copied from interface: `ContactCenterInfo`
  Returns the total number of agent groups supported by this contact center.

  Specified by:
    `getNumAgentGroups` in interface `ContactCenterInfo`
  Returns:
    the total number of agent groups.

### getNumContactTypes

    public int getNumContactTypes()

  Description copied from interface: `ContactCenterInfo`
  Returns the total number of contact types supported by this contact center. This should be the same as `ContactCenterInfo.getNumInContactTypes()``+` `ContactCenterInfo.getNumOutContactTypes()`.

  Specified by:
    `getNumContactTypes` in interface `ContactCenterInfo`
  Returns:
    the total number of contact types.

### getNumInContactTypes

    public int getNumInContactTypes()

  Description copied from interface: `ContactCenterInfo`
  Returns the total number of inbound contact types for this contact center.

  Specified by:
    `getNumInContactTypes` in interface `ContactCenterInfo`
  Returns:
    the total number of inbound contact types.

### getNumMainPeriods

    public int getNumMainPeriods()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of main periods used for evaluation, as defined in `PeriodChangeEvent`. For a steady-state evaluation on a single period, this always returns 1, even if the model defines several period.

  Specified by:
    `getNumMainPeriods` in interface `ContactCenterInfo`
  Returns:
    the total number of main periods.

### getMainPeriodName

    public String getMainPeriodName(int mp)

  Description copied from interface: `ContactCenterInfo`
  Returns the name corresponding to the main period `mp`. This can return `null` or an empty string for unnamed periods.

  Specified by:
    `getMainPeriodName` in interface `ContactCenterInfo`
  Overrides:
    `getMainPeriodName` in class `AbstractContactCenterInfo`
  Parameters:
    `mp` - the index of the main period.
  Returns:
    the name of the main period.

### getNumMatricesOfAWT

    public int getNumMatricesOfAWT()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of matrices containing acceptable waiting times, for estimating service levels. Usually, this returns 1.

  Specified by:
    `getNumMatricesOfAWT` in interface `ContactCenterInfo`
  Returns:
    the number of matrices of acceptable waiting times.

### getMatrixOfAWTName

    public String getMatrixOfAWTName(int m)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the matrix of AWTs with index `m`. This method returns `null` if no name is associated with the matrix. This name can be used, e.g., to give the AWT if the same AWT is used for all contact types and periods.

  Specified by:
    `getMatrixOfAWTName` in interface `ContactCenterInfo`
  Overrides:
    `getMatrixOfAWTName` in class `AbstractContactCenterInfo`
  Parameters:
    `m` - the index of the matrix of AWTs.
  Returns:
    the name associated with the matrix.

### getNumOutContactTypes

    public int getNumOutContactTypes()

  Description copied from interface: `ContactCenterInfo`
  Returns the total number of outbound contact types for this contact center.

  Specified by:
    `getNumOutContactTypes` in interface `ContactCenterInfo`
  Returns:
    the total number of outbound contact types.

### getNumWaitingQueues

    public int getNumWaitingQueues()

  Description copied from interface: `ContactCenterInfo`
  Returns the total number of waiting queues capable of storing contacts.

  Specified by:
    `getNumWaitingQueues` in interface `ContactCenterInfo`
  Returns:
    the number of waiting queues.

### getPerformanceMeasures

    public PerformanceMeasureType[] getPerformanceMeasures()

  Description copied from interface: `ContactCenterEval`
  Returns an array containing all the groups of performance measures this object can estimate. If no performance measure is supported by a given implementation, this method should return an array with length 0 instead of `null`.

  Specified by:
    `getPerformanceMeasures` in interface `ContactCenterEval`
  Returns:
    the array of groups of performance measures.

### hasEvalOption

    public boolean hasEvalOption(EvalOptionType option)

  Description copied from interface: `ContactCenterEval`
  Determines if the evaluation option `option` is supported by the implemented system. It should return `true` if and only if the `option` is in the array returned by `ContactCenterEval.getEvalOptions()`. Otherwise, it returns `false`.

  Specified by:
    `hasEvalOption` in interface `ContactCenterEval`
  Parameters:
    `option` - the queried evaluation option.
  Returns:
    the support status of the option.

### reset

    public void reset()

  Description copied from interface: `ContactCenterEval`
  Resets this contact center evaluation system for new parameters. Every cached or processed parameter should be reread from the parameter objects. In the case of the simulation, one should try to preserve random number seeds whenever possible, even if the contact center needs to be reconstructed. Some implementatios of this interface provide specialized reset methods allowing to change the associated parameter objects.

  Specified by:
    `reset` in interface `ContactCenterEval`

### seemsUnstable

    public boolean seemsUnstable()

  Description copied from interface: `ContactCenterEval`
  Determines if the system seems to be unstable. When a system is unstable, the returned steady-state performance measures are not reliable. This method mainly applies for stationary simulators which return `true` when the system appears to be unstable, i.e., some waiting queues grow up with simulation time. The method must throw an `IllegalStateException` if it is called before `ContactCenterEval.eval()` and always return `false` if no stability check applies.

  Specified by:
    `seemsUnstable` in interface `ContactCenterEval`
  Returns:
    the result of the stability check.

### setEvalOption

    public void setEvalOption(EvalOptionType option,
                              Object value)

  Description copied from interface: `ContactCenterEval`
  Sets the evaluation option `option` to `value`. If the given option is not supported, this throws a `NoSuchElementException`. If the class of the given value is incompatible, this throws a `ClassCastException`. If the evaluation option cannot be changed, this throws an `UnsupportedOperationException`.

  Specified by:
    `setEvalOption` in interface `ContactCenterEval`
  Parameters:
    `option` - the option to be set.
    `value` - the new value of the option.

### getAgentGroupName

    public String getAgentGroupName(int i)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the agent group identifier `i`. If no name is associated with a given agent group, this returns `null`.

  Specified by:
    `getAgentGroupName` in interface `ContactCenterInfo`
  Overrides:
    `getAgentGroupName` in class `AbstractContactCenterInfo`
  Parameters:
    `i` - the identifier of the agent group.
  Returns:
    the agent group name, or `null`.

### getAgentGroupProperties

    public Map<String,String> getAgentGroupProperties(int i)

  Description copied from interface: `ContactCenterInfo`
  This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for agent groups instead of contact types.

  Specified by:
    `getAgentGroupProperties` in interface `ContactCenterInfo`
  Overrides:
    `getAgentGroupProperties` in class `AbstractContactCenterInfo`
  Parameters:
    `i` - the agent group identifier.
  Returns:
    the map of properties.

### getContactTypeName

    public String getContactTypeName(int k)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the contact type `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumContactTypes()`. The first `ContactCenterInfo.getNumInContactTypes()` indices are inbound contact types whereas the remaining indices are outbound contact types. If no contact type name is available, this returns `null`.

  Specified by:
    `getContactTypeName` in interface `ContactCenterInfo`
  Overrides:
    `getContactTypeName` in class `AbstractContactCenterInfo`
  Parameters:
    `k` - the contact type identifier.
  Returns:
    the contact type name or `null` if no name is defined.

### getContactTypeProperties

    public Map<String,String> getContactTypeProperties(int k)

  Description copied from interface: `ContactCenterInfo`
  Returns the properties associated with contact type `k`. Properties are additional strings describing a contact type. This can include the language of the customers, the originating region, etc. If no property is defined for the given contact type, this method returns an empty map.

  Specified by:
    `getContactTypeProperties` in interface `ContactCenterInfo`
  Overrides:
    `getContactTypeProperties` in class `AbstractContactCenterInfo`
  Parameters:
    `k` - the contact type identifier.
  Returns:
    the map of properties.

### getWaitingQueueName

    public String getWaitingQueueName(int q)

  Description copied from interface: `ContactCenterInfo`
  Returns the name of the waiting queue with index `q` used by the evaluation. If the waiting queue has no name, returns `null`.

  Specified by:
    `getWaitingQueueName` in interface `ContactCenterInfo`
  Overrides:
    `getWaitingQueueName` in class `AbstractContactCenterInfo`
  Parameters:
    `q` - the index of the waiting queue.
  Returns:
    the name of the waiting queue.

### getWaitingQueueProperties

    public Map<String,String> getWaitingQueueProperties(int q)

  Description copied from interface: `ContactCenterInfo`
  This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for waiting queues instead of contact types.

  Specified by:
    `getWaitingQueueProperties` in interface `ContactCenterInfo`
  Overrides:
    `getWaitingQueueProperties` in class `AbstractContactCenterInfo`
  Parameters:
    `q` - the waiting queue identifier.
  Returns:
    the map of properties.

### getObs

    public double[] getObs(PerformanceMeasureType pm,
                           int row,
                           int column)

  Description copied from interface: `ContactCenterSimWithObservations`
  Returns an array containing the observations for a performance measure of type `pm`, identified by row `row` and column `column`. If the observations are not available for the given performance measure, this method throws a `NoSuchElementException`.

  Specified by:
    `getObs` in interface `ContactCenterSimWithObservations`
  Parameters:
    `pm` - the type of performance measure.
    `row` - the row of the performance measure.
    `column` - the column of the performance measure.
  Returns:
    the array of observations.

### numberObs

    public int numberObs(PerformanceMeasureType pm,
                         int row,
                         int column)

  Description copied from interface: `ContactCenterSimWithObservations`
  Returns the number of observations available for a performance measure of type `pm`, identified by row `row` and column `column`. If the number of observations is not available for the given performance measure, this method throws a `NoSuchElementException`.

  Specified by:
    `numberObs` in interface `ContactCenterSimWithObservations`
  Parameters:
    `pm` - the type of performance measure.
    `row` - the row of the performance measure.
    `column` - the column of the performance measure.
  Returns:
    the number of observations.

### addTransitionListener

    public void addTransitionListener(TransitionListener listener)

### removeTransitionListener

    public void removeTransitionListener(TransitionListener listener)

### clearTransitionListeners

    public void clearTransitionListeners()

### getTransitionListeners

    public List<TransitionListener> getTransitionListeners()

### notifyInit

    public void notifyInit(int r,
                           int mp,
                           CallCenterCTMC ctmc1)

### notifyTransition

    public void notifyTransition(int r,
                                 int mp,
                                 CallCenterCTMC ctmc1,
                                 TransitionType type)

Overview | Package | Class | Tree | Deprecated | Index | Help
| ContactCenters V. 0.9.9.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

To submit a bug or ask questions, send an e-mail to Richard Simard.