| /////////////////////////////////////////////////////////////////////////////// |
| // // |
| // Copyright (c) 2000-2019 Ericsson Telecom AB // |
| // // |
| // All rights reserved. This program and the accompanying materials // |
| // are made available under the terms of the Eclipse Public License v2.0 // |
| // which accompanies this distribution, and is available at // |
| // https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html // |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| /////////////////////////////////////////////////////////// |
| // Module: EPTF_CLL_ExecCtrlTimeProfile_Definitions |
| // |
| // Purpose: |
| // This module contains type definitions for EPTF_CLL_ExecCtrl_TimeProfile implementation. |
| // |
| // Module depends on: |
| // <EPTF_CLL_Common_Definitions> |
| // |
| // Module Parameters: |
| // tsp_EPTF_ExecCtrl_TimeProfileDescrList - <EPTF_ExecCtrl_TimeProfileDescrList> - the time profile descriptors |
| // tsp_EPTF_ExecCtrl_TimeProfileList - <tsp_EPTF_ExecCtrl_TimeProfileList> - the time profiles |
| // tsp_EPTF_ExecCtrl_TimeProfile2TcList - <EPTF_ExecCtrl_TimeProfile2TcList> - traffic case to time profile assignment |
| // |
| // Current Owner: |
| // ethjgi |
| // |
| // Last Review Date: |
| // 2008-03-10 |
| // |
| // Detailed Comments: |
| // This module contains type definitions for EPTF_CLL_ExecCtrl_TimeProfile implementation. |
| // |
| /////////////////////////////////////////////////////////////// |
| |
| module EPTF_CLL_ExecCtrlTimeProfile_Definitions { |
| |
| import from EPTF_CLL_Common_Definitions all; |
| |
| modulepar EPTF_ExecCtrl_TimeProfileDescrList tsp_EPTF_ExecCtrl_TimeProfileDescrList := {}; |
| modulepar EPTF_ExecCtrl_TimeProfileList tsp_EPTF_ExecCtrl_TimeProfileList := {}; |
| modulepar EPTF_ExecCtrl_TimeProfile2TcList tsp_EPTF_ExecCtrl_TimeProfile2TcList := {}; |
| |
| // time dependent targetValue (e.g. CPS): |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfile_TCName |
| // |
| // Purpose: |
| // Type for identify a traffic case by names |
| // |
| // Elements: |
| // - eGrpName - *charstring* - the name of entity group |
| // - scName - *charstring* - the name of scenario |
| // - tcName - *charstring* - the name of traffic case |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_TimeProfile_TCName { |
| charstring eGrpName, |
| charstring scName, |
| charstring tcName |
| } |
| |
| |
| // this defined the DB: |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfileItem |
| // |
| // Purpose: |
| // Defines an item in the time profile |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_TimeProfileItem { |
| float time, // time elapsed since the profile was started (in seconds) |
| float targetValue // targetValue to use from that time |
| } |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfileItemList |
| // |
| // Purpose: |
| // Defines the time profile as a list of <EPTF_ExecCtrl_TimeProfileItem> |
| // |
| /////////////////////////////////////////////////////////// |
| type record of EPTF_ExecCtrl_TimeProfileItem EPTF_ExecCtrl_TimeProfileItemList; |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TcTimeProfileItem |
| // |
| // Purpose: |
| // Time profile data type for a traffic case |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_TcTimeProfileItem { |
| EPTF_IntegerList timeProfileIdList, // ids in EPTF_ExecCtrl_TimeProfileDescrList |
| integer timeProfileIdx, // id in EPTF_ExecCtrl_TimeProfileList |
| EPTF_IntegerList eventIdList // id of the scheduled event for these time profiles |
| } |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TcTimeProfile |
| // |
| // Purpose: |
| // List of traffic case time profile items <EPTF_ExecCtrl_TcTimeProfileItem> |
| // |
| /////////////////////////////////////////////////////////// |
| type record of EPTF_ExecCtrl_TcTimeProfileItem EPTF_ExecCtrl_TcTimeProfile; // per tc |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_ScTimeProfileItem |
| // |
| // Purpose: |
| // List of traffic case time profiles |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_ScTimeProfileItem { |
| EPTF_ExecCtrl_TcTimeProfile tcTimeProfile |
| } |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_ScTimeProfile |
| // |
| // Purpose: |
| // Database of time profile data for scenarios |
| // |
| /////////////////////////////////////////////////////////// |
| type record of EPTF_ExecCtrl_ScTimeProfileItem EPTF_ExecCtrl_ScTimeProfile; // timeprofile per sc: scTimeProfile[<scidx>].tcTimeProfile[<tcidx>].timeProfileIdList |
| |
| // this defines the tsp: |
| |
| // defines a time profile: |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfileDescr |
| // |
| // Purpose: |
| // Type to define a time profile |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_TimeProfileDescr { |
| charstring name, |
| EPTF_ExecCtrl_TimeProfileItemList timeProfileData // the profile data |
| } |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfileDescrList |
| // |
| // Purpose: |
| // List of time profiles <EPTF_ExecCtrl_TimeProfileDescr> |
| // This type can be used to define all time profiles |
| // |
| /////////////////////////////////////////////////////////// |
| type record of EPTF_ExecCtrl_TimeProfileDescr EPTF_ExecCtrl_TimeProfileDescrList; // list of time profiles |
| |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfileData |
| // |
| // Purpose: |
| // Time profile data for a traffic case |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_TimeProfileData { |
| charstring timeProfileDescrName, // the name of the time profile descriptor |
| float startTime, // the time when the profile should be activated (with respect to start of the execution) (in seconds) |
| float periodOfRepetition, // the period that the timeProfileData should be repeated with |
| integer nofRepetition // number of times the timeProfileData should be repeated (-1: infinity, 0: executed only once (never repeated), 1: executed two times (repeated once), etc.) |
| } |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfileDataList |
| // |
| // Purpose: |
| // List of time profile traffic case data <EPTF_ExecCtrl_TimeProfileData> |
| // |
| /////////////////////////////////////////////////////////// |
| type record of EPTF_ExecCtrl_TimeProfileData EPTF_ExecCtrl_TimeProfileDataList; |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfile |
| // |
| // Purpose: |
| // Time profile definition |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_TimeProfile { |
| charstring name, // name of the time profile |
| EPTF_ExecCtrl_TimeProfileDataList timeProfileList // the list of time profiles that should be used |
| } |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfileList |
| // |
| // Purpose: |
| // List of time profile traffic case data <EPTF_ExecCtrl_TimeProfile> |
| // |
| /////////////////////////////////////////////////////////// |
| type record of EPTF_ExecCtrl_TimeProfile EPTF_ExecCtrl_TimeProfileList; |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfile2Tc |
| // |
| // Purpose: |
| // Time profile data for a traffic case |
| // |
| /////////////////////////////////////////////////////////// |
| type record EPTF_ExecCtrl_TimeProfile2Tc { |
| EPTF_ExecCtrl_TimeProfile_TCName tcId, // id of the traffic case |
| charstring timeProfileName // the name of time profiles that should be used for this TC |
| } |
| |
| /////////////////////////////////////////////////////////// |
| // Type: EPTF_ExecCtrl_TimeProfile2TcList |
| // |
| // Purpose: |
| // List of traffic case time profiles <EPTF_ExecCtrl_TimeProfile2Tc> |
| // This type can be used to define the time profiles for all traffic cases |
| // |
| /////////////////////////////////////////////////////////// |
| type record of EPTF_ExecCtrl_TimeProfile2Tc EPTF_ExecCtrl_TimeProfile2TcList; // defines which timeProfile belongs to which tc |
| |
| |
| |
| } // module EPTF_CLL_ExecCtrlTimeProfile_Definitions |