LibItsIvim_TypesAndValues.ttcn 3.81 KB
Newer Older
/**
 *  @author     ETSI / STF517
 *  @version    $URL$
 *              $Id$
 *  @desc       Module containing type and value definitions for IVIM
 *
 */
module LibItsIvim_TypesAndValues {
    
    //LibIts
    import from IVIM_PDU_Descriptions language "ASN.1:1997" all;
    import from IVI language "ASN.1:1997" all;
    import from ITS_Container language "ASN.1:1997" all;
    
    group actionTypes {
        
        /**
         * @desc Indication of whether event cancellation has to be raised by the test system or iut
         */
        type enumerated Trigger {
            e_ets(0),
            e_iut(1)
        }
        
    } // End ofgroup actionTypes
    
    group ivimConstants {
        
        const TimestampIts c_repetition_interval_deactivated := 0;
        const TimestampIts c_duration_2sec := 2;
        const TimestampIts c_duration_4sec := 4;
        const TimestampIts c_duration_6sec := 6;
        
    } // End ofgroup ivimConstants
    
    group otherTypes {
        
        /**
         * @desc List of UtIvimTriggers used in behaviours 
         */
        type record of UtIvimTrigger UtIvimTriggerList;
        
        /**
         * @desc List of IviIdentificationNumbers used in behaviours 
         */
        type record of IviIdentificationNumber IviIdentificationNumberList;
        
    }
    
    group utPrimitives {
        
        /**
         * @desc Upper Tester message to request triggering of an event at IUT 
         */
        type record UtIvimTrigger {
garciay's avatar
garciay committed
            TimestampIts repetitionInterval optional,
            TimestampIts validFrom optional,
            TimestampIts validTo optional,
            IVIManagementContainer.connectedIviStructures connectedIviStructures optional,
            IviStructure.optional_ optional_ optional
        }
        
        /**
         * @desc Upper Tester result message of request of triggering of an event at IUT 
         */
        type record UtIvimTriggerResult {
            boolean result,
            IviIdentificationNumber iviIdentificationNumber
        }
        
        /**
         * @desc Upper Tester message to update an event at IUT 
         */
        type record UtIvimUpdate {
            IviIdentificationNumber iviIdentificationNumber,
            TimestampIts timeStamp optional,
            TimestampIts validFrom optional,
            TimestampIts validTo optional,
            IVIManagementContainer.connectedIviStructures connectedIviStructures optional,
            IviStructure.optional_ optional_ optional
        }
        
        /**
         * @desc Upper Tester result message of an update request of an event on Ivim IUT 
         */
        type record UtIvimUpdateResult { 
            boolean result,
            IviIdentificationNumber iviIdentificationNumber
        }
        
        /**
         * @desc Upper Tester message to request the termination of an event at IUT 
         */
        type record UtIvimTermination {
            IviIdentificationNumber iviIdentificationNumber
        }
        
        /**
         * @desc Upper Tester result message of termination of an event on Ivim IUT 
         */
        type boolean UtIvimTerminationResult;
        
        /**
         * @desc Upper Tester message to check event/status on Ivim IUT 
         */
        type record UtIvimEventInd {
            IVIM iviMsg
        } with {
            encode (iviMsg) "LibItsIvim_asn1"
        }
        
        /**
         * @desc List of Upper Tester messages to check event/status on Ivim IUT 
         */
        type record of UtIvimEventInd UtIvimEventIndList;
        
        /**
         * @desc List of ActionID received in response to the Upper Tester triggered messages
         */
        type record of ActionID UtIvimActionIDList;
        
    }
    with {
        encode "UpperTester"
    }
}
with {
    encode "LibItsIvim"
}