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.app
Class ContactCenterEvalResults

    java.lang.Object
      umontreal.iro.lecuyer.contactcenters.app.ContactCenterEvalResults

All Implemented Interfaces:
  ContactCenterEval, ContactCenterInfo

Direct Known Subclasses:
  ContactCenterSimResults

    public class ContactCenterEvalResults

extends Object
implements ContactCenterEval

Contains results obtained by another contact center evaluation system. This class can be used to store the results produced by a simulator, to retrieve them efficiently, or to serialize them into an XML file. Results can be retrieved by using the methods of `ContactCenterEval`. The implementation of the methods of the interface that perform evaluations throws an `UnsupportedOperationException`.

An object from this class can be constructed using any implementation of `ContactCenterEval`, or from an instance of `ContactCenterEvalResultsParams`. The `createParams()` method can be used to turn any instance of this class into a parameter object of class `ContactCenterEvalResultsParams`.

The class `ContactCenterEvalResultsConverter` provides convenience method to create an object containing results from an XML file, or to export an object of this class into XML. One can also use `PerformanceMeasureFormat.formatResults(ContactCenterEval,java.io.File)` to export simulation results to a file.

Constructor Summary
`ContactCenterEvalResults(ContactCenterEval eval)` Constructs a new contact center results container by getting evaluation results from the system `eval`.
`ContactCenterEvalResults(ContactCenterEvalResultsParams ccp)` Constructs a new object containing results read from the parameter object `ccp`.

Method Summary
`void` | `check()`
`static ContactCenterEvalResults` | `createFromEval(ContactCenterEval eval)` Constructs a new object storing the last results produced by the evaluation system `eval`.
`static ContactCenterEvalResults` | `createFromParams(ContactCenterEvalResultsParams ccp)` Parses the given parameter object `ccp`, and constructs an object containing evaluation results.
`static ContactCenterEvalResults` | `createFromParams(ContactCenterEvalResultsParams ccp, boolean reportPropertiesToEvalInfo)` Similar to the method `createFromParams(ContactCenterEvalResultsParams)`, but if the flag `reportPropertiesToEvalInfo` is set to `true`, copies the report properties into the evaluation information.
`ContactCenterEvalResultsParams` | `createParams()` Creates a parameter object that can be marshalled using JAXB from this object, and copies its evaluation results..
`void` | `eval()` Evaluates the contact center's supported performance measures using the current values of implementation-specific parameters and evaluation options.
`String` | `formatStatistics()` Formats information about every performance measure after `ContactCenterEval.eval()` is called.
`boolean` | `formatStatisticsExcel(WritableWorkbook wb)` Constructs and returns an JExcel API workbook containing the results of the evaluation, and appends the contents of the generated report to the workbook `wb`.
`String` | `formatStatisticsLaTeX()` Formats and returns a statistical report that can be included into a LATEX document.
`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.
`String` | `getAgentGroupSegmentName(int i)` Returns the name associated with the agent group segment `i`, where `i` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumAgentGroupSegments()`.
`Map<String,String>` | `getAgentGroupSegmentProperties(int i)` This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for agent group segments instead of contact types.
`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`.
`String` | `getContactTypeSegmentName(int k)` Returns the name associated with the contact type segment `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumContactTypeSegments()`.
`Map<String,String>` | `getContactTypeSegmentProperties(int k)` This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for contact type segments instead of contact types.
`TimeUnit` | `getDefaultUnit()` Returns the time unit in which output performance measures representing times are expressed.
`Map<String,Object>` | `getEvalInfo()` Represents information about this evaluation system that should be included in any report produced by `ContactCenterEval.formatStatistics()`.
`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` | `getInContactTypeSegmentName(int k)` Returns the name associated with the inbound contact type segment `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumInContactTypeSegments()`.
`Map<String,String>` | `getInContactTypeSegmentProperties(int k)` This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for inbound contact type segments instead of contact types.
`String` | `getMainPeriodName(int mp)` Returns the name corresponding to the main period `mp`.
`String` | `getMainPeriodSegmentName(int mp)` Returns the name associated with the main period segment `mp`, where `mp` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumMainPeriodSegments()`.
`String` | `getMatrixOfAWTName(int m)` Returns the name associated with the matrix of AWTs with index `m`.
`int` | `getNumAgentGroups()` Returns the total number of agent groups supported by this contact center.
`int` | `getNumAgentGroupSegments()` Returns the number of user-defined segments regrouping agent groups.
`int` | `getNumAgentGroupsWithSegments()` Returns the number of agent groups including segments regrouping several agent groups.
`int` | `getNumContactTypes()` Returns the total number of contact types supported by this contact center.
`int` | `getNumContactTypeSegments()` Returns the number of user-defined segments regrouping contact types.
`int` | `getNumContactTypesWithSegments()` Returns the number of contact types including segments regrouping several contact types.
`int` | `getNumInContactTypes()` Returns the total number of inbound contact types for this contact center.
`int` | `getNumInContactTypeSegments()` Returns the number of user-defined segments regrouping inbound contact types.
`int` | `getNumInContactTypesWithSegments()` Returns the number of inbound contact types including segments regrouping several inbound contact types.
`int` | `getNumMainPeriods()` Returns the number of main periods used for evaluation, as defined in `PeriodChangeEvent`.
`int` | `getNumMainPeriodSegments()` Returns the number of user-defined segments regrouping main periods.
`int` | `getNumMainPeriodsWithSegments()` Returns the number of main periods including segments regrouping several main periods.
`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` | `getNumOutContactTypeSegments()` Returns the number of user-defined segments regrouping outbound contact types.
`int` | `getNumOutContactTypesWithSegments()` Returns the number of outbound contact types including segments regrouping several outbound contact types.
`int` | `getNumWaitingQueues()` Returns the total number of waiting queues capable of storing contacts.
`int` | `getNumWaitingQueueSegments()` Returns the number of user-defined segments regrouping waiting queues.
`int` | `getNumWaitingQueuesWithSegments()` Returns the number of waiting queues including segments regrouping several waiting queues.
`String` | `getOutContactTypeSegmentName(int k)` Returns the name associated with the outbound contact type segment `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumOutContactTypeSegments()`.
`Map<String,String>` | `getOutContactTypeSegmentProperties(int k)` This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for outbound contact type segments instead of contact types.
`DoubleMatrix2D` | `getPerformanceMeasure(PerformanceMeasureType m)` Returns the matrix of values corresponding to the group of performance measures `m` estimated by the last call to `ContactCenterEval.eval()`.
`PerformanceMeasureType[]` | `getPerformanceMeasures()` Returns an array containing all the groups of performance measures this object can estimate.
`protected static PerformanceMeasureType` | `getPerformanceMeasureType(String name)`
`ReportParams` | `getReportParams()` Returns the parameters for reports formatted by `ContactCenterEval.formatStatistics()`, or `ContactCenterEval.formatStatisticsExcel(WritableWorkbook)`.
`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.
`String` | `getWaitingQueueSegmentName(int k)` Returns the name associated with the waiting queue segment `q`, where `q` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumMainPeriodSegments()`.
`Map<String,String>` | `getWaitingQueueSegmentProperties(int q)` This method is similar to `ContactCenterInfo.getContactTypeProperties(int)`, for waiting queue segments instead of contact types.
`boolean` | `hasEvalOption(EvalOptionType option)` Determines if the evaluation option `option` is supported by the implemented system.
`boolean` | `hasPerformanceMeasure(PerformanceMeasureType m)` Determines if the evaluation system can estimate performance measures in group `m`.
`boolean` | `isVerbose()` Determines if the implementation should print information during the evaluation of the performance measures.
`void` | `reset()` Resets this contact center evaluation system for new parameters.
`boolean` | `seemsUnstable()` Determines if the system seems to be unstable.
`void` | `setEvalOption(EvalOptionType option, Object value)` Sets the evaluation option `option` to `value`.
`void` | `setReportParams(ReportParams reportParams)` Sets the report parameters to `reportParams`.
`void` | `setVerbose(boolean v)` Sets the verbose status to `v`.
`void` | `writeParams(ContactCenterEvalResultsParams ccp)` Fills `ccp` with parameters stored in this object.

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

Constructor Detail

### ContactCenterEvalResults

    public ContactCenterEvalResults(ContactCenterEvalResultsParams ccp)

  Constructs a new object containing results read from the parameter object `ccp`. It is not recommended to use this constructor directly; one should use the `createFromParams(ContactCenterEvalResultsParams)` method to create instances of this class.

  Parameters:
    `ccp` - the contact centers results.

### ContactCenterEvalResults

    public ContactCenterEvalResults(ContactCenterEval eval)

  Constructs a new contact center results container by getting evaluation results from the system `eval`. It is not recommended to use this constructor directly; one should call `createFromEval(ContactCenterEval)` instead.

  Parameters:
    `eval` - the contact center evaluator.

Method Detail

### getPerformanceMeasureType

    protected static PerformanceMeasureType getPerformanceMeasureType(String name)

### writeParams

    public void writeParams(ContactCenterEvalResultsParams ccp)

  Fills `ccp` with parameters stored in this object. This method is rarely used directly; one should call `createParams()` instead.

  Parameters:
    `ccp` - the output parameter object.

### getEvalInfo

    public Map<String,Object> getEvalInfo()

  Description copied from interface: `ContactCenterEval`
  Represents information about this evaluation system that should be included in any report produced by `ContactCenterEval.formatStatistics()`. The information is organized as (key, value) pairs in a map. This information may include steps of an approximation, number of iterations, etc. One can modify the returned map to add custom information. The content of this map should not affect the process of the evaluation; it is used only for building the statistical report. One can use evaluation options for system parameters.

  Specified by:
    `getEvalInfo` in interface `ContactCenterEval`
  Returns:
    the evaluation information.

### 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.

### 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.

### 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.

### 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.

### 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.

### 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`
  Parameters:
    `k` - the contact type identifier.
  Returns:
    the contact type name or `null` if no name is defined.

### 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`
  Parameters:
    `i` - the identifier of the agent group.
  Returns:
    the agent group name, or `null`.

### 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`
  Parameters:
    `q` - the index of the waiting queue.
  Returns:
    the name of the waiting queue.

### 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`
  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`
  Parameters:
    `m` - the index of the matrix of AWTs.
  Returns:
    the name associated with the matrix.

### 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.

### 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.

### 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.

### 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.

### eval

    public void eval()

  Description copied from interface: `ContactCenterEval`
  Evaluates the contact center's supported performance measures using the current values of implementation-specific parameters and evaluation options. If parameters or seeds of random streams are not changed, multiple calls to this method should return the same results. In consequence of this, simulation should reset the random number streams before returning. This method can throw an `IllegalStateException` if there is an inconsistency in the system's parameters. It can throw an `ArithmeticException` if, for the given parameters, the performance measures cannot be estimated.

  Specified by:
    `eval` 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.

### 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.

### hasPerformanceMeasure

    public boolean hasPerformanceMeasure(PerformanceMeasureType m)

  Description copied from interface: `ContactCenterEval`
  Determines if the evaluation system can estimate performance measures in group `m`. This should return `true` if and only if the group of performance measures is listed in the array returned by `ContactCenterEval.getPerformanceMeasures()`.

  Specified by:
    `hasPerformanceMeasure` in interface `ContactCenterEval`
  Parameters:
    `m` - the group of performance measures being tested.
  Returns:
    a `true` value if the measure is supported, `false` otherwise.

### getPerformanceMeasure

    public DoubleMatrix2D getPerformanceMeasure(PerformanceMeasureType m)

  Description copied from interface: `ContactCenterEval`
  Returns the matrix of values corresponding to the group of performance measures `m` estimated by the last call to `ContactCenterEval.eval()`. The dimensions of the matrix and the role of its elements depend on the queried group of performance measures, and the capabilities of the implementing evaluation system. See the `PerformanceMeasureType` class for more information about the defined performance measures. If the queried measure is not supported by this evaluation object, this throws a `NoSuchElementException`. If the values of the measures are not available, e.g., the `ContactCenterEval.eval()` method was never called after the last call to `ContactCenterEval.reset()`, this throws an `IllegalStateException`.

  Specified by:
    `getPerformanceMeasure` in interface `ContactCenterEval`
  Parameters:
    `m` - the queried group of performance measures.
  Returns:
    the matrix of values computed by the evaluation system.

### 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`

### isVerbose

    public boolean isVerbose()

  Description copied from interface: `ContactCenterEval`
  Determines if the implementation should print information during the evaluation of the performance measures. The information depends on the type of evaluation method being involved. It can include steps or iterations of an approximation algorithm, or information about important elements of a simulation. Summary information should be printed on the standard output while debugging data, e.g., traces of every event in a simulation, should be sent to log files if they are generated. By default, the verbose mode is disabled.

  Specified by:
    `isVerbose` in interface `ContactCenterEval`
  Returns:
    `true` if the implementation is in verbose mode, `false` otherwise (the default).

### setVerbose

    public void setVerbose(boolean v)

  Description copied from interface: `ContactCenterEval`
  Sets the verbose status to `v`. If `v` is `true`, verbose mode is enabled. Otherwise, it is disabled.

  Specified by:
    `setVerbose` in interface `ContactCenterEval`
  Parameters:
    `v` - `true` to activate verbose mode, `false` to disable it.
  See Also:
    `ContactCenterEval.isVerbose()`

### 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`
  Returns:
    the printed statistics.

### setReportParams

    public void setReportParams(ReportParams reportParams)

  Description copied from interface: `ContactCenterEval`
  Sets the report parameters to `reportParams`.

  Specified by:
    `setReportParams` in interface `ContactCenterEval`
  Parameters:
    `reportParams` - the report parameters..
  See Also:
    `ContactCenterEval.getReportParams()`

### formatStatistics

    public String formatStatistics()

  Description copied from interface: `ContactCenterEval`
  Formats information about every performance measure after `ContactCenterEval.eval()` is called. It can be simulation statistics, information about the steps of an approximation algorithm, or simply the values of all performance measures. This method should call `ContactCenterEval.getEvalInfo()` to obtain general information about the evaluation and incorporate the information into the returned string. For each entry in the map, the method should add a `key: value` line in the string. Then, the method appends the performance measures to the returned string. The `PerformanceMeasureFormatText` class can be used to convert matrices of performance measures into strings. If the evaluation was not triggered by calling `ContactCenterEval.eval()` before this method is called, an `IllegalStateException` is thrown. If no statistical information is available even after the evaluation, this method should return an empty string instead of throwing an exception.

  Specified by:
    `formatStatistics` in interface `ContactCenterEval`
  Returns:
    a string containing a statistical report.

### formatStatisticsLaTeX

    public String formatStatisticsLaTeX()

  Description copied from interface: `ContactCenterEval`
  Formats and returns a statistical report that can be included into a LATEX document. This is similar to `ContactCenterEval.formatStatistics()`, except the generated report is in LATEX rather than plain text.

  Specified by:
    `formatStatisticsLaTeX` in interface `ContactCenterEval`
  Returns:
    the formatted report.

### formatStatisticsExcel

    public boolean formatStatisticsExcel(WritableWorkbook wb)

  Description copied from interface: `ContactCenterEval`
  Constructs and returns an JExcel API workbook containing the results of the evaluation, and appends the contents of the generated report to the workbook `wb`. This method may add multiple sheets, e.g., for general and detailed information. This method should add the information in the map returned by `ContactCenterEval.getEvalInfo()` to a sheet in the workbook. This method returns `true` if and only if the given workbook was modified.

  One can then customize the returned workbook as needed. The method `WritableWorkbook.write()` can be used to export the workbook to an output stream. This can be used to create files that can be opened directly by Microsoft Excel for results analysis and reporting. Excel documents can also be opened by open source software such as OpenOffice.org, KOffice, etc.

  Specified by:
    `formatStatisticsExcel` in interface `ContactCenterEval`
  Parameters:
    `wb` - the workbook to append report to.
  Returns:
    `true` if and only if the given workbook was modified.

### check

    public void check()

### 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.

### 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`
  Parameters:
    `i` - the agent group identifier.
  Returns:
    the map of properties.

### getAgentGroupSegmentName

    public String getAgentGroupSegmentName(int i)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the agent group segment `i`, where `i` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumAgentGroupSegments()`. If no segment name is available, this returns `null`.

  Specified by:
    `getAgentGroupSegmentName` in interface `ContactCenterInfo`
  Parameters:
    `i` - the agent group segment identifier.
  Returns:
    the segment name or `null` if no name is defined.

### getAgentGroupSegmentProperties

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

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

  Specified by:
    `getAgentGroupSegmentProperties` in interface `ContactCenterInfo`
  Parameters:
    `i` - the segment identifier.
  Returns:
    the map of properties.

### 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`
  Parameters:
    `k` - the contact type identifier.
  Returns:
    the map of properties.

### getContactTypeSegmentName

    public String getContactTypeSegmentName(int k)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the contact type segment `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumContactTypeSegments()`. If no segment name is available, this returns `null`.

  Specified by:
    `getContactTypeSegmentName` in interface `ContactCenterInfo`
  Parameters:
    `k` - the contact type segment identifier.
  Returns:
    the segment name or `null` if no name is defined.

### getContactTypeSegmentProperties

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

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

  Specified by:
    `getContactTypeSegmentProperties` in interface `ContactCenterInfo`
  Parameters:
    `k` - the segment identifier.
  Returns:
    the map of properties.

### getInContactTypeSegmentName

    public String getInContactTypeSegmentName(int k)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the inbound contact type segment `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumInContactTypeSegments()`. If no segment name is available, this returns `null`.

  Specified by:
    `getInContactTypeSegmentName` in interface `ContactCenterInfo`
  Parameters:
    `k` - the inbound contact type segment identifier.
  Returns:
    the segment name or `null` if no name is defined.

### getInContactTypeSegmentProperties

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

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

  Specified by:
    `getInContactTypeSegmentProperties` in interface `ContactCenterInfo`
  Parameters:
    `k` - the segment identifier.
  Returns:
    the map of properties.

### getMainPeriodSegmentName

    public String getMainPeriodSegmentName(int mp)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the main period segment `mp`, where `mp` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumMainPeriodSegments()`. If no segment name is available, this returns `null`.

  Specified by:
    `getMainPeriodSegmentName` in interface `ContactCenterInfo`
  Parameters:
    `mp` - the main period segment identifier.
  Returns:
    the segment name or `null` if no name is defined.

### getNumAgentGroupSegments

    public int getNumAgentGroupSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of user-defined segments regrouping agent groups.

  Specified by:
    `getNumAgentGroupSegments` in interface `ContactCenterInfo`
  Returns:
    the number of segments regrouping agent groups.

### getNumContactTypeSegments

    public int getNumContactTypeSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of user-defined segments regrouping contact types.

  Specified by:
    `getNumContactTypeSegments` in interface `ContactCenterInfo`
  Returns:
    the number of segments regrouping contact types.

### getNumInContactTypeSegments

    public int getNumInContactTypeSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of user-defined segments regrouping inbound contact types.

  Specified by:
    `getNumInContactTypeSegments` in interface `ContactCenterInfo`
  Returns:
    the number of segments regrouping inbound contact types.

### getNumMainPeriodSegments

    public int getNumMainPeriodSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of user-defined segments regrouping main periods.

  Specified by:
    `getNumMainPeriodSegments` in interface `ContactCenterInfo`
  Returns:
    the number of segments regrouping main periods.

### getNumOutContactTypeSegments

    public int getNumOutContactTypeSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of user-defined segments regrouping outbound contact types.

  Specified by:
    `getNumOutContactTypeSegments` in interface `ContactCenterInfo`
  Returns:
    the number of segments regrouping outbound contact types.

### getNumWaitingQueueSegments

    public int getNumWaitingQueueSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of user-defined segments regrouping waiting queues.

  The result of this method depends on the role of the waiting queues, which depends on the router's policy. For example, if waiting queues correspond to contact types, this returns the result of `ContactCenterInfo.getNumContactTypeSegments()`.

  Specified by:
    `getNumWaitingQueueSegments` in interface `ContactCenterInfo`
  Returns:
    the number of segments regrouping waiting queues.

### getOutContactTypeSegmentName

    public String getOutContactTypeSegmentName(int k)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the outbound contact type segment `k`, where `k` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumOutContactTypeSegments()`. If no segment name is available, this returns `null`.

  Specified by:
    `getOutContactTypeSegmentName` in interface `ContactCenterInfo`
  Parameters:
    `k` - the outbound contact type segment identifier.
  Returns:
    the segment name or `null` if no name is defined.

### getOutContactTypeSegmentProperties

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

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

  Specified by:
    `getOutContactTypeSegmentProperties` in interface `ContactCenterInfo`
  Parameters:
    `k` - the segment identifier.
  Returns:
    the map of properties.

### 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`
  Parameters:
    `q` - the waiting queue identifier.
  Returns:
    the map of properties.

### getWaitingQueueSegmentName

    public String getWaitingQueueSegmentName(int k)

  Description copied from interface: `ContactCenterInfo`
  Returns the name associated with the waiting queue segment `q`, where `q` is a number greater than or equal to 0 and smaller than `ContactCenterInfo.getNumMainPeriodSegments()`. If no segment name is available, this returns `null`.

  Specified by:
    `getWaitingQueueSegmentName` in interface `ContactCenterInfo`
  Parameters:
    `k` - the waiting queue segment identifier.
  Returns:
    the segment name or `null` if no name is defined.

### getWaitingQueueSegmentProperties

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

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

  Specified by:
    `getWaitingQueueSegmentProperties` in interface `ContactCenterInfo`
  Parameters:
    `q` - the segment identifier.
  Returns:
    the map of properties.

### createFromEval

    public static ContactCenterEvalResults createFromEval(ContactCenterEval eval)

  Constructs a new object storing the last results produced by the evaluation system `eval`. The resulting object is completely independent of `eval`. As a result, this method can be used to take snapshots of evaluation results, and store them, e.g., to compare different scenarios.

  If `eval` is an instance of `ContactCenterSim`, this method returns an instance of `ContactCenterSimResults`. Otherwise, this returns an instance of `ContactCenterEvalResults`.

  Parameters:
    `eval` - the source evaluation system.
  Returns:
    an object containing a copy of the evaluation results.

### createFromParams

    public static ContactCenterEvalResults createFromParams(ContactCenterEvalResultsParams ccp)

  Parses the given parameter object `ccp`, and constructs an object containing evaluation results. The class of `ccp`, `ContactCenterEvalResultsParams`, was generated using JAXB, so it does not implement the `ContactCenterEval` interface. Usually, `ccp` is constructed by using JAXB. This method reads the parameters of `ccp`, and stores them in such a way that they can be accessed efficiently using methods of `ContactCenterEval`. The resulting object is an instance of `ContactCenterSimResults` if `ccp` is an instance of `ContactCenterSimResultsParams`.

  Parameters:
    `ccp` - the parameter object containing results.
  Returns:
    the object storing results.

### createFromParams

    public static ContactCenterEvalResults createFromParams(ContactCenterEvalResultsParams ccp,
                                                            boolean reportPropertiesToEvalInfo)

  Similar to the method `createFromParams(ContactCenterEvalResultsParams)`, but if the flag `reportPropertiesToEvalInfo` is set to `true`, copies the report properties into the evaluation information. In the early version of the output format, evaluation information, e.g., properties specific to a given experiment, were stored into the properties of the `report` child element. An `evalInfo` element has recently been added to store the evaluation information, reserving report properties for user-defined options specific to reporting. This method is provided to read old-style output files, and should not be used for newer output files.

  Parameters:
    `ccp` - the contact center parameters.
    `reportPropertiesToEvalInfo` - determines if report properties are copied to evaluation information.
  Returns:
    the contact center evaluation results.

### createParams

    public ContactCenterEvalResultsParams createParams()

  Creates a parameter object that can be marshalled using JAXB from this object, and copies its evaluation results..

  Returns:
    the parameter object containing results.

### getNumContactTypesWithSegments

    public int getNumContactTypesWithSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of contact types including segments regrouping several contact types. If K≤1, this returns the result of `ContactCenterInfo.getNumContactTypes()`. Otherwise, this returns the sum of `ContactCenterInfo.getNumContactTypes()`, `ContactCenterInfo.getNumContactTypeSegments()`, and 1.

  Specified by:
    `getNumContactTypesWithSegments` in interface `ContactCenterInfo`
  Returns:
    the number of contact types including segments.

### getNumInContactTypesWithSegments

    public int getNumInContactTypesWithSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of inbound contact types including segments regrouping several inbound contact types. If ≤1, this returns the result of `ContactCenterInfo.getNumInContactTypes()`. Otherwise, this returns the sum of `ContactCenterInfo.getNumInContactTypes()`, `ContactCenterInfo.getNumInContactTypeSegments()`, and 1.

  Specified by:
    `getNumInContactTypesWithSegments` in interface `ContactCenterInfo`
  Returns:
    the number of inbound contact types including segments.

### getNumOutContactTypesWithSegments

    public int getNumOutContactTypesWithSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of outbound contact types including segments regrouping several outbound contact types. If ≤1, this returns the result of `ContactCenterInfo.getNumOutContactTypes()`. Otherwise, this returns the sum of `ContactCenterInfo.getNumOutContactTypes()`, `ContactCenterInfo.getNumOutContactTypeSegments()`, and 1.

  Specified by:
    `getNumOutContactTypesWithSegments` in interface `ContactCenterInfo`
  Returns:
    the number of outbound contact types including segments.

### getNumAgentGroupsWithSegments

    public int getNumAgentGroupsWithSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of agent groups including segments regrouping several agent groups. If I≤1, this returns the result of `ContactCenterInfo.getNumAgentGroups()`. Otherwise, this returns the sum of `ContactCenterInfo.getNumAgentGroups()`, `ContactCenterInfo.getNumAgentGroupSegments()`, and 1.

  Specified by:
    `getNumAgentGroupsWithSegments` in interface `ContactCenterInfo`
  Returns:
    the number of agent groups including segments.

### getNumMainPeriodsWithSegments

    public int getNumMainPeriodsWithSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of main periods including segments regrouping several main periods. If P≤1, this returns the result of `ContactCenterInfo.getNumMainPeriods()`. Otherwise, this returns the sum of `ContactCenterInfo.getNumMainPeriods()`, `ContactCenterInfo.getNumMainPeriodSegments()`, and 1.

  Specified by:
    `getNumMainPeriodsWithSegments` in interface `ContactCenterInfo`
  Returns:
    the number of main periods including segments.

### getNumWaitingQueuesWithSegments

    public int getNumWaitingQueuesWithSegments()

  Description copied from interface: `ContactCenterInfo`
  Returns the number of waiting queues including segments regrouping several waiting queues. If the number of waiting queues is smaller than two, this returns the result of `ContactCenterInfo.getNumWaitingQueues()`. Otherwise, this returns the sum of `ContactCenterInfo.getNumWaitingQueues()`, `ContactCenterInfo.getNumWaitingQueueSegments()`, and 1.

  Specified by:
    `getNumWaitingQueuesWithSegments` in interface `ContactCenterInfo`
  Returns:
    the number of waiting queues including segments.

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.