## CFXReportTemplatesInit.ccl

## This file specifies a list of template paths relative to the etc directory.

## This file is in the CCL format, but does not actually represent
## a valid CCL object in CFD-Post.  It just provides a familiar and
## human readable format to define template names and associate them
## with specific files.

# CONDITION Objects:
# The following are parameters available in CONDITION objects.
#
# Type = < Object Parameter | Object Count | Condition Group >
# 
#   Object Parameter
#     - indicates that this condition is based on the value of a
#           specific parameter of a specific object.
#   Object Count
#     - indicates that this condition is based on the number of
#           objects of a specified type
#   Condition Group
#     - indicates that this condition is based on the evaluated values
#           of other conditions
#
#
# Object Path = <CCL Path of an object>
#   - used to specify the path of the object to consider.  Used in
#        'Object Parameter' condition Type.  If the parameter name
#        for the condition is for a named object (i.e. not a singleton)
#        then just specify the type without a name, e.g. /DATA READER/CASE.
#        You cannot specify a named object as a parent of the object
#        with the parameter.
#
#
# Parameter Name = <Name of CCL Parameter>
#   - used to specify the name of the parameter to consider.  Used in
#        'Object Parameter' condition Type.
#        
#
# Object Type = <CCL Object Type>
#   - used to specify the type of the object to consider.  Used in
#        'Object Count' condition Type.
#
#
# Expected Value = <value>
#   - used to specify the expected value of the parameter that is being
#        considered.  Used in 'Object Parameter' and 'Object Count'
#        condition Types.
#
#
# Condition List = <List of Conditions>
#   - used to specify the list of conditions to evaluate to determine
#        the result for this condition.  Specifying conditions that
#        end up recursively evaluating this condition again will result
#        in erroneous behaviour.  Used in 'Condition Group' condition Type.
#
#


## MACHINE TYPE conditions:
CONDITION: Is Pump
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Machine Type
  Expected Value = Pump
END
CONDITION: Is Fan
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Machine Type
  Expected Value = Fan
END
CONDITION: Is Axial Turbine
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Machine Type
  Expected Value = Axial Turbine
END
CONDITION: Is Radial Turbine
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Machine Type
  Expected Value = Radial Turbine
END
CONDITION: Is Axial Compressor
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Machine Type
  Expected Value = Axial Compressor
END
CONDITION: Is Centrifugal Compressor
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Machine Type
  Expected Value = Centrifugal Compressor
END
CONDITION: Is Other
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Machine Type
  Expected Value = Other
END

## ROTOR/STATOR conditions:
CONDITION: Is Stator
  Type = Object Parameter
  Object Path = /DOMAIN
  Parameter Name = Is Rotating
  Expected Value = false
END
CONDITION: Is Rotor
  Type = Object Parameter
  Object Path = /DOMAIN
  Parameter Name = Is Rotating
  Expected Value = true
END

## FLOW TYPE conditions:
CONDITION: Is Compressible
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Flow Type
  Expected Value = compressible
END
CONDITION: Is Incompressible
  Type = Object Parameter
  Object Path = /DATA READER/CASE
  Parameter Name = Flow Type
  Expected Value = incompressible
END

## Number of DOMAINS conditions:
CONDITION: Is Single Domain
   Type = Object Count
   Object Type = DOMAIN
   Expected Value = 1
END

## PUMP condition Groups:
CONDITION: pump1
  Type = Condition Group
  Condition List = Is Single Domain, Is Pump, Is Rotor
END
CONDITION: pump2
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Compressor, Is Rotor, Is Incompressible
END
CONDITION: pump3
  Type = Condition Group
  Condition List = Is Single Domain, Is Centrifugal Compressor, Is Rotor, Is Incompressible
END
CONDITION: pump4
  Type = Condition Group
  Condition List = Is Single Domain, Is Other, Is Rotor
END

## FAN condition Groups:
CONDITION: fan1
  Type = Condition Group
  Condition List = Is Single Domain, Is Fan, Is Rotor, Is Incompressible
END

## HYDRAULIC TURBINE ROTOR condition Groups:
CONDITION: hydroturbine1
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Turbine, Is Rotor, Is Incompressible
END
CONDITION: hydroturbine2
  Type = Condition Group
  Condition List = Is Single Domain, Is Radial Turbine, Is Rotor, Is Incompressible
END

## STANDARD STATOR condition Groups:
CONDITION: standStator1
  Type = Condition Group
  Condition List = Is Single Domain, Is Pump, Is Stator
END
CONDITION: standStator2
  Type = Condition Group
  Condition List = Is Single Domain, Is Fan, Is Stator
END
CONDITION: standStator3
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Turbine, Is Stator, Is Incompressible
END
CONDITION: standStator4
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Compressor, Is Stator
END
CONDITION: standStator5
  Type = Condition Group
  Condition List = Is Single Domain, Is Centrifugal Compressor, Is Stator
END
CONDITION: standStator6
  Type = Condition Group
  Condition List = Is Single Domain, Is Radial Turbine, Is Stator, Is Incompressible
END
CONDITION: standStator7
  Type = Condition Group
  Condition List = Is Single Domain, Is Other, Is Stator
END

## Compressible TURBINE ROTOR condition Groups:
CONDITION: compTurbineRotor1
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Turbine, Is Rotor, Is Compressible
END
CONDITION: compTurbineRotor2
  Type = Condition Group
  Condition List = Is Single Domain, Is Radial Turbine, Is Rotor, Is Compressible
END

## Incompressible TURBINE ROTOR condition Groups:
CONDITION: incompTurbineRotor1
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Turbine, Is Rotor, Is Incompressible
END
CONDITION: incompTurbineRotor2
  Type = Condition Group
  Condition List = Is Single Domain, Is Radial Turbine, Is Rotor, Is Incompressible
END

## TURBINE STATOR condition Groups:
CONDITION: turbineStator1
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Turbine, Is Stator, Is Compressible
END
CONDITION: turbineStator2
  Type = Condition Group
  Condition List = Is Single Domain, Is Radial Turbine, Is Stator, Is Compressible
END

## COMPRESSOR condition Groups:
CONDITION: compAxialRotor1
  Type = Condition Group
  Condition List = Is Single Domain, Is Axial Compressor, Is Rotor, Is Compressible
END
CONDITION: compAxialRotor2
  Type = Condition Group
  Condition List = Is Single Domain, Is Fan, Is Rotor, Is Compressible
END
CONDITION: compCentRotor
  Type = Condition Group
  Condition List = Is Single Domain, Is Centrifugal Compressor, Is Rotor, Is Compressible
END


#
# TEMPLATE objects
# The TEMPLATE objects associate template files with the conditions that
# should be met to use those files.  The following are the parameters for
# the TEMPLATE objects:
#
# File
#   - The path of the report template file relative to the etc directory.
#
# Autoload Conditions
#   - A single condition name or a comma separated list of condition names that
#       should be met for the template to be used as an automatically selected
#       template. The templates will be considered alphabetically by TEMPLATE
#       name, so be sure to specify the templates with more specific conditions
#       before more general conditions.
#   - If no conditions are specified, when testing whether the condition is
#       met will always evaluate to false.
#   - If conditions are specified that do not exist, then testing whether the
#       condition is met will evaluate to false unless other conditions in the
#       list exist and are met. 
#
# Default
#   - Boolean indicating whether the template is the default template or not.
#       There should only be a single default template, and if there are more
#       than one, the first (alphabetically, based on TEMPLATE name) will be used.
#       Default templates should not have conditions associated with them, and
#       if they do, the conditions will be ignored.
#


## Map to Report Template Files
TEMPLATE: DEFAULT
  File = PostReports/GenericReport.cst
  Default = true
END

TEMPLATE: T1
  File = PostReports/PumpRotorReport.cse
  Autoload Conditions = pump1, pump2, pump3, pump4
END
TEMPLATE: T2
  File = PostReports/FanRotorReport.cse
  Autoload Conditions = fan1
END
TEMPLATE: T3
  File = PostReports/HydraulicTurbineRotorReport.cse
  Autoload Conditions = hydroturbine1, hydroturbine2
END
TEMPLATE: T4
  File = PostReports/CentrifugalCompressorRotorReport.cse
  Autoload Conditions = compCentRotor
END
TEMPLATE: T5
  File = PostReports/AxialCompressorRotorReport.cse
  Autoload Conditions = compAxialRotor1, compAxialRotor2
END
TEMPLATE: T6
  File = PostReports/CompressibleTurbineRotorReport.cse
  Autoload Conditions = compTurbineRotor1, compTurbineRotor2
END
TEMPLATE: T7
  File = PostReports/HydraulicTurbineRotorReport.cse
  Autoload Conditions = incompTurbineRotor1, incompTurbineRotor2
END
TEMPLATE: T8
  File = PostReports/TurbineStatorReport.cse
  Autoload Conditions = turbineStator1, turbineStator2
END
TEMPLATE: T9
  File = PostReports/StandardStatorReport.cse
  Autoload Conditions = standStator1, standStator2, standStator3, standStator4, standStator5, standStator6, standStator7
END
TEMPLATE: T10
  File = PostReports/FanNoiseReport.cse
END
TEMPLATE: T11
  File = PostReports/AxialCompressorReport.cse
END
TEMPLATE: T12
  File = PostReports/AxialCompressorReportTBRBeta.cse
END
TEMPLATE: T13
  File = PostReports/CentrifugalCompressorReport.cse
END
TEMPLATE: T14
  File = PostReports/CentrifugalCompressorReportTBRBeta.cse
END
TEMPLATE: T15
  File = PostReports/CompressibleTurbineReport.cse
END
TEMPLATE: T16
  File = PostReports/CompressibleTurbineReportTBRBeta.cse
END
TEMPLATE: T17
  File = PostReports/HydraulicTurbineReport.cse
END
TEMPLATE: T18
  File = PostReports/PumpReport.cse
END
TEMPLATE: T19
  File = PostReports/CentrifugalCompressorBladeRowReport.cse
END

