Commit 645aa125 authored by tepelmann's avatar tepelmann
Browse files

Added TC_G5B_CCH_01, TC_G5B_CCH_02.

parent 360f07e2
......@@ -787,12 +787,40 @@ module LibItsDcc_Functions {
return p_tOff * int2float(PIXIT_NUMBER_OF_FRAMES + 1);
}
/**
* @desc Retrieves the string representation of a Channel.
* @param The channel enumerated.
* @return The string representation.
*/
function f_channel2str(Channel p_channel) return charstring {
select(p_channel) {
case (cCH) {
return "CCH";
}
case (sCH1) {
return "SCH1";
}
case (sCH2) {
return "SCH2";
}
case (sCH3) {
return "SCH";
}
case (sCH4) {
return "SCH4";
}
case else {
return "unknown channel";
}
}
}
/**
* @desc Retrieves the string representation of a ChannelState.
* @param The channel state enumerated.
* @return The string representation.
*/
function f_enum2str(ChannelState p_state) return charstring {
function f_channelState2str(ChannelState p_state) return charstring {
select(p_state) {
case (relaxed) {
return "relaxed";
......@@ -809,6 +837,95 @@ module LibItsDcc_Functions {
}
}
function f_getAcceptablePower(Channel p_channel, ChannelState p_state) return integer {
var integer v_ret;
select (p_channel) {
case (cCH) {
select (p_state) {
case (relaxed) {
return PIXIT_ACCEPTABLE_POWER_CCH_RELAXED;
}
case (active) {
return PIXIT_ACCEPTABLE_POWER_CCH_ACTIVE;
}
case (restrictive) {
return PIXIT_ACCEPTABLE_POWER_CCH_RESTRICTIVE;
}
case else {
testcase.stop(__SCOPE__ & ": Unknown channel state " & f_channelState2str(p_state) & " for " & f_channel2str(p_channel));
}
}
}
case (sCH1) {
select (p_state) {
case (relaxed) {
return PIXIT_ACCEPTABLE_POWER_SCH1_RELAXED;
}
case (active) {
return PIXIT_ACCEPTABLE_POWER_SCH1_ACTIVE;
}
case (restrictive) {
return PIXIT_ACCEPTABLE_POWER_SCH1_RESTRICTIVE;
}
case else {
testcase.stop(__SCOPE__ & ": Unknown channel state " & f_channelState2str(p_state) & " for " & f_channel2str(p_channel));
}
}
}
case (sCH2) {
select (p_state) {
case (relaxed) {
return PIXIT_ACCEPTABLE_POWER_SCH2_RELAXED;
}
case (active) {
return PIXIT_ACCEPTABLE_POWER_SCH2_ACTIVE;
}
case (restrictive) {
return PIXIT_ACCEPTABLE_POWER_SCH2_RESTRICTIVE;
}
case else {
testcase.stop(__SCOPE__ & ": Unknown channel state " & f_channelState2str(p_state) & " for " & f_channel2str(p_channel));
}
}
}
case (sCH3) {
select (p_state) {
case (relaxed) {
return PIXIT_ACCEPTABLE_POWER_SCH3_RELAXED;
}
case (active) {
return PIXIT_ACCEPTABLE_POWER_SCH3_ACTIVE;
}
case (restrictive) {
return PIXIT_ACCEPTABLE_POWER_SCH3_RESTRICTIVE;
}
case else {
testcase.stop(__SCOPE__ & ": Unknown channel state " & f_channelState2str(p_state) & " for " & f_channel2str(p_channel));
}
}
}
case (sCH4) {
select (p_state) {
case (relaxed) {
return PIXIT_ACCEPTABLE_POWER_SCH4_RELAXED;
}
case (active) {
return PIXIT_ACCEPTABLE_POWER_SCH4_ACTIVE;
}
case (restrictive) {
return PIXIT_ACCEPTABLE_POWER_SCH4_RESTRICTIVE;
}
case else {
testcase.stop(__SCOPE__ & ": Unknown channel state " & f_channelState2str(p_state) & " for " & f_channel2str(p_channel));
}
}
}
case else {
testcase.stop(__SCOPE__ & ": Unknown channel " & f_channel2str(p_channel));
}
}
}
}
group externalFunction {
......
......@@ -594,6 +594,46 @@ module LibItsDcc_Pixits {
{ 16, 0.5, 20.000 }
}
/**
* @desc Give the content of Table 26.
* @see ETSI TS 102 917-2 Table 26
*/
modulepar ChannelStates PIXIT_TABLE_26_TC_G5B_CCH_01 := {
active,
restrictive
}
/**
* @desc Give the content of Table 27.
* @see ETSI TS 102 917-2 Table 27
*/
modulepar ProfileChannelAspects2 PIXIT_TABLE_27_TC_G5B_CCH_02 := {
{ 7,
{
{
active,
{ restrictive }
},
{
restrictive,
{ restrictive }
}
}
},
{ 8,
{
{
active,
{ active ,restrictive }
},
{
restrictive,
{ active, restrictive }
}
}
}
}
/**
* @desc Give the content of Table 29.
* @see ETSI TS 102 917-2 Table 29
......
......@@ -163,6 +163,16 @@ module LibItsDcc_TypesAndValues {
SingleChannelAspect aspect
}
type record SingleChannelAspect2 {
ChannelState cchState,
ChannelState sch3State
}
type record ProfileSingleChannelAspect2 {
ProfileType profile,
SingleChannelAspect2 aspect
}
type record ProfileChannelAspect {
ProfileType profile,
record of record {
......@@ -176,6 +186,16 @@ module LibItsDcc_TypesAndValues {
type record of ProfileChannelAspect ProfileChannelAspects;
type record ProfileChannelAspect2 {
ProfileType profile,
record of record {
ChannelState cchState,
record of ChannelState sch3States
} aspects
}
type record of ProfileChannelAspect2 ProfileChannelAspects2;
type record ChannelProfileAspect {
ChannelState state,
record of ProfileType profiles
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment