coreEngine.Helper

## Class RMHelper

- java.lang.Object
- - coreEngine.Helper.RMHelper

- All Implemented Interfaces:
    java.io.Serializable

      public class RMHelper
      extends java.lang.Object
      implements java.io.Serializable

  This class is used to store ramp metering data.
  Author:
    Lake Trask
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private CA2DString` | `RM_ALINEA_Key` ALINEA ramp metering scheme key
    `private CA2DString` | `RM_Fuzzy_Key` Fuzzy logic ramp metering scheme key
    `private CA2DInt` | `RMRate` Fixed ramp metering rate
    `private CA2DInt` | `RMType` Ramp metering type
    `private static long` | `serialVersionUID` serialVersionUID

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RMHelper(int numSegments, int numPeriods)` Constructor
    `RMHelper(Seed seed)` Constructor

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addPeriod(int startPeriod, int numPeriodToBeAdded)` Add some periods
    `void` | `addSegment(int startSegment, int numSegmentToBeAdded)` Add some segments
    `CA2DString` | `getRampMeteringALINEAKey()` Get ramp metering ALINEA scheme key
    `CA2DInt` | `getRampMeteringFixRate()` Get fixed ramp metering rate
    `CA2DString` | `getRampMeteringFuzzyKey()` Get ramp metering fuzzy logic scheme key
    `CA2DInt` | `getRampMeteringType()` Get ramp metering type
    `void` | `removePeriod(int startPeriod, int numPeriodToBeDeleted)` Remove some periods
    `void` | `removeSegment(int startSegment, int numSegmentToBeDeleted)` Remove some segments
    `void` | `setGlobalRMType(int rampMeteringType)` Set global ramp metering type

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### serialVersionUID

          private static final long serialVersionUID

      serialVersionUID
      See Also:
        Constant Field Values

    - #### RMType

          private final CA2DInt RMType

      Ramp metering type

    - #### RMRate

          private final CA2DInt RMRate

      Fixed ramp metering rate

    - #### RM_ALINEA_Key

          private final CA2DString RM_ALINEA_Key

      ALINEA ramp metering scheme key

    - #### RM_Fuzzy_Key

          private final CA2DString RM_Fuzzy_Key

      Fuzzy logic ramp metering scheme key

  - ### Constructor Detail

    - #### RMHelper

          public RMHelper(Seed seed)

      Constructor
      Parameters:
        `seed` - seed instance

    - #### RMHelper

          public RMHelper(int numSegments,
                          int numPeriods)

      Constructor
      Parameters:
        `numSegments` - number of segments
        `numPeriods` - number of periods

  - ### Method Detail

    - #### getRampMeteringType

          public CA2DInt getRampMeteringType()

      Get ramp metering type
      Returns:
        ramp metering type compressed array

    - #### getRampMeteringFixRate

          public CA2DInt getRampMeteringFixRate()

      Get fixed ramp metering rate
      Returns:
        fixed ramp metering rate compressed array

    - #### getRampMeteringALINEAKey

          public CA2DString getRampMeteringALINEAKey()

      Get ramp metering ALINEA scheme key
      Returns:
        ramp metering ALINEA scheme key compressed array

    - #### getRampMeteringFuzzyKey

          public CA2DString getRampMeteringFuzzyKey()

      Get ramp metering fuzzy logic scheme key
      Returns:
        ramp metering fuzzy logic scheme key compressed array

    - #### setGlobalRMType

          public void setGlobalRMType(int rampMeteringType)

      Set global ramp metering type
      Parameters:
        `rampMeteringType` - new ramp metering type

    - #### removePeriod

          public void removePeriod(int startPeriod,
                                   int numPeriodToBeDeleted)

      Remove some periods
      Parameters:
        `startPeriod` - starting period
        `numPeriodToBeDeleted` - number of periods

    - #### removeSegment

          public void removeSegment(int startSegment,
                                    int numSegmentToBeDeleted)

      Remove some segments
      Parameters:
        `startSegment` - starting segment
        `numSegmentToBeDeleted` - number of segments

    - #### addPeriod

          public void addPeriod(int startPeriod,
                                int numPeriodToBeAdded)

      Add some periods
      Parameters:
        `startPeriod` - starting period
        `numPeriodToBeAdded` - number of periods

    - #### addSegment

          public void addSegment(int startSegment,
                                 int numSegmentToBeAdded)

      Add some segments
      Parameters:
        `startSegment` - starting segment
        `numSegmentToBeAdded` - number of segments