# -*- coding: UTF-8 -*- #/** # * Software Name : pycrate # * Version : 0.4 # * # * Copyright 2018. Benoit Michau. ANSSI. P1sec. # * # * This library is free software; you can redistribute it and/or # * modify it under the terms of the GNU Lesser General Public # * License as published by the Free Software Foundation; either # * version 2.1 of the License, or (at your option) any later version. # * # * This library is distributed in the hope that it will be useful, # * but WITHOUT ANY WARRANTY; without even the implied warranty of # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # * Lesser General Public License for more details. # * # * You should have received a copy of the GNU Lesser General Public # * License along with this library; if not, write to the Free Software # * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # * MA 02110-1301 USA # * # *-------------------------------------------------------- # * File Name : pycrate_csn1dir/downlink_rlc_mac_control_message.py # * Created : 2018-11-21 # * Authors : Benoit Michau # *-------------------------------------------------------- #*/ # specification: TS 44.060 - d60 # section: 11.2.0.1 Downlink RLC/MAC messages # top-level object: Downlink RLC/MAC control message # external references from pycrate_csn1dir.packet_neighbour_cell_data_message_content import packet_neighbour_cell_data_message_content from pycrate_csn1dir.psi6_message_content import psi6_message_content from pycrate_csn1dir.psi3_ter_message_content import psi3_ter_message_content from pycrate_csn1dir.ps_handover_command_message_content import ps_handover_command_message_content from pycrate_csn1dir.ec_packet_power_control_timing_advance_message_content import ec_packet_power_control_timing_advance_message_content from pycrate_csn1dir.packet_queueing_notification_message_content import packet_queueing_notification_message_content from pycrate_csn1dir.ec_packet_access_reject_message_content import ec_packet_access_reject_message_content from pycrate_csn1dir.dtm_handover_command_message_content import dtm_handover_command_message_content from pycrate_csn1dir.packet_cs_command_message_content import packet_cs_command_message_content from pycrate_csn1dir.packet_uplink_ack_nack_message_content import packet_uplink_ack_nack_message_content from pycrate_csn1dir.psi14_message_content import psi14_message_content from pycrate_csn1dir.packet_downlink_assignment_message_content import packet_downlink_assignment_message_content from pycrate_csn1dir.packet_pdch_release_message_content import packet_pdch_release_message_content from pycrate_csn1dir.psi2_message_content import psi2_message_content from pycrate_csn1dir.packet_cs_release_message_content import packet_cs_release_message_content from pycrate_csn1dir.multiple_tbf_timeslot_reconfigure_message_content import multiple_tbf_timeslot_reconfigure_message_content from pycrate_csn1dir.packet_cell_change_order_message_content import packet_cell_change_order_message_content from pycrate_csn1dir.psi8_message_content import psi8_message_content from pycrate_csn1dir.ec_packet_downlink_dummy_control_block_message_content import ec_packet_downlink_dummy_control_block_message_content from pycrate_csn1dir.packet_tbf_release_message_content import packet_tbf_release_message_content from pycrate_csn1dir.ec_packet_uplink_ack_nack_message_content import ec_packet_uplink_ack_nack_message_content from pycrate_csn1dir.multiple_tbf_downlink_assignment_message_content import multiple_tbf_downlink_assignment_message_content from pycrate_csn1dir.mbms_ms_id_assignment_message_content import mbms_ms_id_assignment_message_content from pycrate_csn1dir.packet_access_reject_message_content import packet_access_reject_message_content from pycrate_csn1dir.packet_uplink_assignment_message_content import packet_uplink_assignment_message_content from pycrate_csn1dir.ec_packet_uplink_ack_nack_and_contention_resolution_message_content import ec_packet_uplink_ack_nack_and_contention_resolution_message_content from pycrate_csn1dir.packet_cell_change_continue_message_content import packet_cell_change_continue_message_content from pycrate_csn1dir.psi16_message_content import psi16_message_content from pycrate_csn1dir.ec_packet_downlink_assignment_message_content import ec_packet_downlink_assignment_message_content from pycrate_csn1dir.packet_timeslot_reconfigure_message_content import packet_timeslot_reconfigure_message_content from pycrate_csn1dir.packet_measurement_order_message_content import packet_measurement_order_message_content from pycrate_csn1dir.packet_downlink_dummy_control_block_message_content import packet_downlink_dummy_control_block_message_content from pycrate_csn1dir.psi15_message_content import psi15_message_content from pycrate_csn1dir.packet_power_control_timing_advance_message_content import packet_power_control_timing_advance_message_content from pycrate_csn1dir.ec_packet_uplink_assignment_message_content import ec_packet_uplink_assignment_message_content from pycrate_csn1dir.packet_physical_information_message_content import packet_physical_information_message_content from pycrate_csn1dir.packet_serving_cell_si_message_content import packet_serving_cell_si_message_content from pycrate_csn1dir.packet_application_information_message_content import packet_application_information_message_content from pycrate_csn1dir.multiple_tbf_uplink_assignment_message_content import multiple_tbf_uplink_assignment_message_content from pycrate_csn1dir.mbms_neighbouring_cell_information_message_content import mbms_neighbouring_cell_information_message_content from pycrate_csn1dir.packet_serving_cell_data_message_content import packet_serving_cell_data_message_content from pycrate_csn1dir.psi3_quater_message_content import psi3_quater_message_content from pycrate_csn1dir.packet_mbms_announcement_message_content import packet_mbms_announcement_message_content from pycrate_csn1dir.mbms_assignment_non_distribution_message_content import mbms_assignment_non_distribution_message_content from pycrate_csn1dir.packet_dbpsch_assignment_message_content import packet_dbpsch_assignment_message_content from pycrate_csn1dir.psi3_message_content import psi3_message_content from pycrate_csn1dir.psi3_bis_message_content import psi3_bis_message_content from pycrate_csn1dir.packet_prach_parameters_message_content import packet_prach_parameters_message_content from pycrate_csn1dir.ec_packet_polling_request_message_content import ec_packet_polling_request_message_content from pycrate_csn1dir.psi1_message_content import psi1_message_content from pycrate_csn1dir.packet_polling_request_message_content import packet_polling_request_message_content from pycrate_csn1dir.ec_packet_tbf_release_message_content import ec_packet_tbf_release_message_content from pycrate_csn1dir.psi5_message_content import psi5_message_content from pycrate_csn1dir.psi13_message_content import psi13_message_content from pycrate_csn1dir.mbms_assignment_distribution_message_content import mbms_assignment_distribution_message_content from pycrate_csn1dir.packet_paging_request_message_content import packet_paging_request_message_content # code automatically generated by pycrate_csn1 # change object type with type=CSN1T_BSTR (default type is CSN1T_UINT) in init # add dict for value interpretation with dic={...} in CSN1Bit init # add dict for key interpretation with kdic={...} in CSN1Alt init from pycrate_csn1.csnobj import * psi7_message_content = CSN1Ref(name='psi7_message_content', obj=psi6_message_content) default_downlink_message_content = CSN1List(name='default_downlink_message_content', list=[ CSN1Bit(name='page_mode', bit=2), CSN1Bit(bit=-1)]) downlink_rlc_mac_control_message = CSN1Alt(name='downlink_rlc_mac_control_message', alt={ '000001': ('message_type', [ CSN1Ref(obj=packet_cell_change_order_message_content)]), '000010': ('message_type', [ CSN1Ref(obj=packet_downlink_assignment_message_content)]), '000011': ('message_type', [ CSN1Ref(obj=packet_measurement_order_message_content)]), '000100': ('message_type', [ CSN1Ref(obj=packet_polling_request_message_content)]), '000101': ('message_type', [ CSN1Ref(obj=packet_power_control_timing_advance_message_content)]), '000110': ('message_type', [ CSN1Ref(obj=packet_queueing_notification_message_content)]), '000111': ('message_type', [ CSN1Ref(obj=packet_timeslot_reconfigure_message_content)]), '001000': ('message_type', [ CSN1Ref(obj=packet_tbf_release_message_content)]), '001001': ('message_type', [ CSN1Ref(obj=packet_uplink_ack_nack_message_content)]), '001010': ('message_type', [ CSN1Ref(obj=packet_uplink_assignment_message_content)]), '001011': ('message_type', [ CSN1Ref(obj=packet_cell_change_continue_message_content)]), '001100': ('message_type', [ CSN1Ref(obj=packet_neighbour_cell_data_message_content)]), '001101': ('message_type', [ CSN1Ref(obj=packet_serving_cell_data_message_content)]), '001110': ('message_type', [ CSN1Ref(obj=packet_dbpsch_assignment_message_content)]), '001111': ('message_type', [ CSN1Ref(obj=multiple_tbf_downlink_assignment_message_content)]), '010000': ('message_type', [ CSN1Ref(obj=multiple_tbf_uplink_assignment_message_content)]), '010001': ('message_type', [ CSN1Ref(obj=multiple_tbf_timeslot_reconfigure_message_content)]), '010011': ('message_type', [ CSN1Ref(obj=mbms_ms_id_assignment_message_content)]), '010100': ('message_type', [ CSN1Ref(obj=mbms_assignment_non_distribution_message_content)]), '010101': ('message_type', [ CSN1Ref(obj=ps_handover_command_message_content)]), '010110': ('message_type', [ CSN1Ref(obj=packet_physical_information_message_content)]), '010111': ('message_type', [ CSN1Ref(obj=dtm_handover_command_message_content)]), '100000': ('message_type', [ CSN1Ref(obj=packet_serving_cell_si_message_content)]), '100001': ('message_type', [ CSN1Ref(obj=packet_access_reject_message_content)]), '100010': ('message_type', [ CSN1Ref(obj=packet_paging_request_message_content)]), '100011': ('message_type', [ CSN1Ref(obj=packet_pdch_release_message_content)]), '100100': ('message_type', [ CSN1Ref(obj=packet_prach_parameters_message_content)]), '100101': ('message_type', [ CSN1Ref(obj=packet_downlink_dummy_control_block_message_content)]), '100111': ('message_type', [ CSN1Ref(obj=packet_cs_command_message_content)]), '101000': ('message_type', [ CSN1Ref(obj=psi16_message_content)]), '101001': ('message_type', [ CSN1Ref(obj=packet_cs_release_message_content)]), '101010': ('message_type', [ CSN1Ref(obj=mbms_assignment_distribution_message_content)]), '101011': ('message_type', [ CSN1Ref(obj=mbms_neighbouring_cell_information_message_content)]), '101100': ('message_type', [ CSN1Ref(obj=packet_mbms_announcement_message_content)]), '101101': ('message_type', [ CSN1Ref(obj=packet_application_information_message_content)]), '110000': ('message_type', [ CSN1Ref(obj=psi6_message_content)]), '110001': ('message_type', [ CSN1Ref(obj=psi1_message_content)]), '110010': ('message_type', [ CSN1Ref(obj=psi2_message_content)]), '110011': ('message_type', [ CSN1Ref(obj=psi3_message_content)]), '110100': ('message_type', [ CSN1Ref(obj=psi3_bis_message_content)]), '110110': ('message_type', [ CSN1Ref(obj=psi5_message_content)]), '110111': ('message_type', [ CSN1Ref(obj=psi13_message_content)]), '111000': ('message_type', [ CSN1Ref(obj=psi7_message_content)]), '111001': ('message_type', [ CSN1Ref(obj=psi8_message_content)]), '111010': ('message_type', [ CSN1Ref(obj=psi14_message_content)]), '111100': ('message_type', [ CSN1Ref(obj=psi3_ter_message_content)]), '111101': ('message_type', [ CSN1Ref(obj=psi3_quater_message_content)]), '111110': ('message_type', [ CSN1Ref(obj=psi15_message_content)])}) default_downlink_message_content_on_ec_pacch = CSN1List(name='default_downlink_message_content_on_ec_pacch', list=[ CSN1Bit(name='used_dl_coverage_class', bit=2), CSN1Bit(bit=-1)]) downlink_rlc_mac_control_message_on_ec_pacch = CSN1Alt(name='downlink_rlc_mac_control_message_on_ec_pacch', alt={ '00001': ('message_type', [ CSN1Ref(obj=ec_packet_downlink_assignment_message_content)]), '00010': ('message_type', [ CSN1Ref(obj=ec_packet_polling_request_message_content)]), '00011': ('message_type', [ CSN1Ref(obj=ec_packet_power_control_timing_advance_message_content)]), '00100': ('message_type', [ CSN1Ref(obj=ec_packet_tbf_release_message_content)]), '00101': ('message_type', [ CSN1Ref(obj=ec_packet_uplink_ack_nack_message_content)]), '00110': ('message_type', [ CSN1Ref(obj=ec_packet_uplink_assignment_message_content)]), '00111': ('message_type', [ CSN1Ref(obj=ec_packet_uplink_ack_nack_and_contention_resolution_message_content)]), '10001': ('message_type', [ CSN1Ref(obj=ec_packet_access_reject_message_content)]), '10010': ('message_type', [ CSN1Ref(obj=ec_packet_downlink_dummy_control_block_message_content)])})