// This C++ header file was generated by the TTCN-3 compiler // of the TTCN-3 Test Executor version 11.1.0 // The generation of user and time information were disabled by the -D flag. // Copyright (c) 2000-2025 Ericsson Telecom AB // Do not edit this file unless you know what you are doing. #ifndef RSL__Emulation_HH #define RSL__Emulation_HH #ifdef TITAN_RUNTIME_2 #error Generated code does not match with used runtime.\ Code was generated without -R option but -DTITAN_RUNTIME_2 was used. #endif /* Header file includes */ #include #include "IPA_Emulation.hh" #if TTCN3_VERSION != 110100 #error Version mismatch detected.\ Please check the version of the TTCN-3 compiler and the base library.\ Run make clean and rebuild the project if the version of the compiler changed recently. #endif #ifndef LINUX #error This file should be compiled on LINUX #endif #undef RSL__Emulation_HH #endif namespace RSL__Emulation { /* Forward declarations of classes */ class RSLDC__ChanRqd; class RSLDC__ChanRqd_template; class RSLEm__EventType; class RSLEm__EventType_template; class RSLEm__Event; class RSLEm__Event_template; class RSL__DCHAN__PT; class RSL__CCHAN__PT; class RSLEM__register_call; class RSLEM__register_call_redirect; class RSLEM__register_reply; class RSLEM__register_reply_redirect; class RSLEM__register_template; class RSLEM__unregister_call; class RSLEM__unregister_call_redirect; class RSLEM__unregister_reply; class RSLEM__unregister_reply_redirect; class RSLEM__unregister_template; class RSLEM__suspend_call; class RSLEM__suspend_call_redirect; class RSLEM__suspend_reply; class RSLEM__suspend_reply_redirect; class RSLEM__suspend_template; class RSLEM__wait__queue_call; class RSLEM__wait__queue_call_redirect; class RSLEM__wait__queue_reply; class RSLEM__wait__queue_reply_redirect; class RSLEM__wait__queue_template; class RSLEM__get__last__act_call; class RSLEM__get__last__act_call_redirect; class RSLEM__get__last__act_reply; class RSLEM__get__last__act_reply_redirect; class RSLEM__get__last__act_template; class RSLEM__set__auto__chan__act__ack_call; class RSLEM__set__auto__chan__act__ack_call_redirect; class RSLEM__set__auto__chan__act__ack_reply; class RSLEM__set__auto__chan__act__ack_reply_redirect; class RSLEM__set__auto__chan__act__ack_template; class RSLEM__PROC__PT; class ConnectionData; class ConnectionData_template; class LastActData; class LastActData_template; class ASP__RSL__UDList; class ASP__RSL__UDList_template; } /* end of namespace */ #ifndef RSL__Emulation_HH #define RSL__Emulation_HH namespace RSL__Emulation { /* Type definitions */ typedef COMPONENT RSL__DchanHdlr; typedef COMPONENT_template RSL__DchanHdlr_template; typedef COMPONENT RSL__Emulation__CT; typedef COMPONENT_template RSL__Emulation__CT_template; /* Class definitions */ class RSLDC__ChanRqd { OCTETSTRING field_ra; OPTIONAL< INTEGER > field_fn; public: RSLDC__ChanRqd(); RSLDC__ChanRqd(const OCTETSTRING& par_ra, const OPTIONAL< INTEGER >& par_fn); RSLDC__ChanRqd(const RSLDC__ChanRqd& other_value); inline boolean is_component() { return FALSE; } void clean_up(); const TTCN_Typedescriptor_t* get_descriptor() const; RSLDC__ChanRqd& operator=(const RSLDC__ChanRqd& other_value); boolean operator==(const RSLDC__ChanRqd& other_value) const; inline boolean operator!=(const RSLDC__ChanRqd& other_value) const { return !(*this == other_value); } boolean is_bound() const; inline boolean is_present() const { return is_bound(); } boolean is_value() const; inline OCTETSTRING& ra() {return field_ra;} inline const OCTETSTRING& ra() const {return field_ra;} inline OPTIONAL< INTEGER >& fn() {return field_fn;} inline const OPTIONAL< INTEGER >& fn() const {return field_fn;} int size_of() const; void log() const; void set_implicit_omit(); void set_param(Module_Param& param); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLDC__ChanRqd_template : public Base_Template { struct single_value_struct; union { single_value_struct *single_value; struct { unsigned int n_values; RSLDC__ChanRqd_template *list_value; } value_list; struct { RSLDC__ChanRqd_template* precondition; RSLDC__ChanRqd_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void set_specific(); void copy_value(const RSLDC__ChanRqd& other_value); void copy_template(const RSLDC__ChanRqd_template& other_value); public: RSLDC__ChanRqd_template(); RSLDC__ChanRqd_template(template_sel other_value); RSLDC__ChanRqd_template(const RSLDC__ChanRqd& other_value); RSLDC__ChanRqd_template(const OPTIONAL& other_value); RSLDC__ChanRqd_template(RSLDC__ChanRqd_template* p_precondition, RSLDC__ChanRqd_template* p_implied_template); RSLDC__ChanRqd_template(Dynamic_Match_Interface* p_dyn_match); RSLDC__ChanRqd_template(const RSLDC__ChanRqd_template& other_value); ~RSLDC__ChanRqd_template(); RSLDC__ChanRqd_template& operator=(template_sel other_value); RSLDC__ChanRqd_template& operator=(const RSLDC__ChanRqd& other_value); RSLDC__ChanRqd_template& operator=(const OPTIONAL& other_value); RSLDC__ChanRqd_template& operator=(const RSLDC__ChanRqd_template& other_value); boolean match(const RSLDC__ChanRqd& other_value, boolean legacy = FALSE) const; boolean is_bound() const; boolean is_value() const; void clean_up(); RSLDC__ChanRqd valueof() const; void set_type(template_sel template_type, unsigned int list_length); RSLDC__ChanRqd_template& list_item(unsigned int list_index) const; OCTETSTRING_template& ra(); const OCTETSTRING_template& ra() const; INTEGER_template& fn(); const INTEGER_template& fn() const; int size_of() const; void log() const; void log_match(const RSLDC__ChanRqd& match_value, boolean legacy = FALSE) const; void set_implicit_omit(); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void set_param(Module_Param& param); void check_restriction(template_res t_res, const char* t_name=NULL, boolean legacy = FALSE) const; boolean is_present(boolean legacy = FALSE) const; boolean match_omit(boolean legacy = FALSE) const; }; class RSLEm__EventType : public Base_Type { // enum friend class RSLEm__EventType_template; public: enum enum_type { RSLEM__EV__TRX__UP = 0, RSLEM__EV__TRX__DOWN = 1, UNKNOWN_VALUE = 2, UNBOUND_VALUE = 3 }; private: enum_type enum_value; public: RSLEm__EventType(); RSLEm__EventType(int other_value); RSLEm__EventType(enum_type other_value); RSLEm__EventType(const RSLEm__EventType& other_value); RSLEm__EventType& operator=(int other_value); RSLEm__EventType& operator=(enum_type other_value); RSLEm__EventType& operator=(const RSLEm__EventType& other_value); boolean operator==(int other_value) const; boolean operator==(enum_type other_value) const; boolean operator==(const RSLEm__EventType& other_value) const; inline boolean operator!=(int other_value) const { return !(*this == other_value); } inline boolean operator!=(enum_type other_value) const { return !(*this == other_value); } inline boolean operator!=(const RSLEm__EventType& other_value) const { return !(*this == other_value); } boolean operator<(int other_value) const; boolean operator<(enum_type other_value) const; boolean operator<(const RSLEm__EventType& other_value) const; boolean operator>(int other_value) const; boolean operator>(enum_type other_value) const; boolean operator>(const RSLEm__EventType& other_value) const; inline boolean operator<=(int other_value) const { return !(*this > other_value); } inline boolean operator<=(enum_type other_value) const { return !(*this > other_value); } inline boolean operator<=(const RSLEm__EventType& other_value) const { return !(*this > other_value); } inline boolean operator>=(int other_value) const { return !(*this < other_value); } inline boolean operator>=(enum_type other_value) const { return !(*this < other_value); } inline boolean operator>=(const RSLEm__EventType& other_value) const { return !(*this < other_value); } static const char *enum_to_str(enum_type enum_par); static enum_type str_to_enum(const char *str_par, const int* int_par = NULL, const int* int_par2 = NULL); static boolean is_valid_enum(int int_par); static int enum2int(enum_type enum_par); static int enum2int(const RSLEm__EventType& enum_par); int as_int() const { return enum2int(enum_value); } void from_int(int p_val) { *this = p_val; } void int2enum(int int_val); operator enum_type() const; inline boolean is_bound() const { return enum_value != UNBOUND_VALUE; } inline boolean is_value() const { return enum_value != UNBOUND_VALUE; } inline void clean_up(){ enum_value = UNBOUND_VALUE; } inline boolean is_present() const { return is_bound(); } void log() const; void set_param(Module_Param& param); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEm__EventType_template : public Base_Template { union { RSLEm__EventType::enum_type single_value; struct { unsigned int n_values; RSLEm__EventType_template *list_value; } value_list; struct { RSLEm__EventType_template* precondition; RSLEm__EventType_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void copy_template(const RSLEm__EventType_template& other_value); public: RSLEm__EventType_template(); RSLEm__EventType_template(template_sel other_value); RSLEm__EventType_template(int other_value); RSLEm__EventType_template(RSLEm__EventType::enum_type other_value); RSLEm__EventType_template(const RSLEm__EventType& other_value); RSLEm__EventType_template(const OPTIONAL& other_value); RSLEm__EventType_template(RSLEm__EventType_template* p_precondition, RSLEm__EventType_template* p_implied_template); RSLEm__EventType_template(Dynamic_Match_Interface* p_dyn_match); RSLEm__EventType_template(const RSLEm__EventType_template& other_value); ~RSLEm__EventType_template(); boolean is_bound() const; boolean is_value() const; void clean_up(); RSLEm__EventType_template& operator=(template_sel other_value); RSLEm__EventType_template& operator=(int other_value); RSLEm__EventType_template& operator=(RSLEm__EventType::enum_type other_value); RSLEm__EventType_template& operator=(const RSLEm__EventType& other_value); RSLEm__EventType_template& operator=(const OPTIONAL& other_value); RSLEm__EventType_template& operator=(const RSLEm__EventType_template& other_value); boolean match(RSLEm__EventType::enum_type other_value, boolean legacy = FALSE) const; boolean match(const RSLEm__EventType& other_value, boolean legacy = FALSE) const; RSLEm__EventType::enum_type valueof() const; void set_type(template_sel template_type, unsigned int list_length = 0); RSLEm__EventType_template& list_item(unsigned int list_index); void log() const; void log_match(const RSLEm__EventType& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); boolean is_present(boolean legacy = FALSE) const; boolean match_omit(boolean legacy = FALSE) const; void set_param(Module_Param& param); void check_restriction(template_res t_res, const char* t_name=NULL, boolean legacy = FALSE) const; }; class RSLEm__Event { RSLEm__EventType field_ev__type; IPA__Types::IpaStreamId field_sid; public: RSLEm__Event(); RSLEm__Event(const RSLEm__EventType& par_ev__type, const IPA__Types::IpaStreamId& par_sid); RSLEm__Event(const RSLEm__Event& other_value); inline boolean is_component() { return FALSE; } void clean_up(); const TTCN_Typedescriptor_t* get_descriptor() const; RSLEm__Event& operator=(const RSLEm__Event& other_value); boolean operator==(const RSLEm__Event& other_value) const; inline boolean operator!=(const RSLEm__Event& other_value) const { return !(*this == other_value); } boolean is_bound() const; inline boolean is_present() const { return is_bound(); } boolean is_value() const; inline RSLEm__EventType& ev__type() {return field_ev__type;} inline const RSLEm__EventType& ev__type() const {return field_ev__type;} inline IPA__Types::IpaStreamId& sid() {return field_sid;} inline const IPA__Types::IpaStreamId& sid() const {return field_sid;} inline int size_of() const {return 2;} void log() const; void set_implicit_omit(); void set_param(Module_Param& param); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEm__Event_template : public Base_Template { struct single_value_struct; union { single_value_struct *single_value; struct { unsigned int n_values; RSLEm__Event_template *list_value; } value_list; struct { RSLEm__Event_template* precondition; RSLEm__Event_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void set_specific(); void copy_value(const RSLEm__Event& other_value); void copy_template(const RSLEm__Event_template& other_value); public: RSLEm__Event_template(); RSLEm__Event_template(template_sel other_value); RSLEm__Event_template(const RSLEm__Event& other_value); RSLEm__Event_template(const OPTIONAL& other_value); RSLEm__Event_template(RSLEm__Event_template* p_precondition, RSLEm__Event_template* p_implied_template); RSLEm__Event_template(Dynamic_Match_Interface* p_dyn_match); RSLEm__Event_template(const RSLEm__Event_template& other_value); ~RSLEm__Event_template(); RSLEm__Event_template& operator=(template_sel other_value); RSLEm__Event_template& operator=(const RSLEm__Event& other_value); RSLEm__Event_template& operator=(const OPTIONAL& other_value); RSLEm__Event_template& operator=(const RSLEm__Event_template& other_value); boolean match(const RSLEm__Event& other_value, boolean legacy = FALSE) const; boolean is_bound() const; boolean is_value() const; void clean_up(); RSLEm__Event valueof() const; void set_type(template_sel template_type, unsigned int list_length); RSLEm__Event_template& list_item(unsigned int list_index) const; RSLEm__EventType_template& ev__type(); const RSLEm__EventType_template& ev__type() const; IPA__Types::IpaStreamId_template& sid(); const IPA__Types::IpaStreamId_template& sid() const; int size_of() const; void log() const; void log_match(const RSLEm__Event& match_value, boolean legacy = FALSE) const; void set_implicit_omit(); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void set_param(Module_Param& param); void check_restriction(template_res t_res, const char* t_name=NULL, boolean legacy = FALSE) const; boolean is_present(boolean legacy = FALSE) const; boolean match_omit(boolean legacy = FALSE) const; }; class RSL__DCHAN__PT : public PORT { enum msg_selection { MESSAGE_0, MESSAGE_1, MESSAGE_2 }; struct msg_queue_item : public msg_queue_item_base { msg_selection item_selection; union { RSLDC__ChanRqd *message_0; RSL__Types::RSL__Message *message_1; IPA__Emulation::ASP__RSL__Unitdata *message_2; }; component sender_component; }; void remove_msg_queue_head(); protected: void clear_queue(); public: RSL__DCHAN__PT(const char *par_port_name = NULL); ~RSL__DCHAN__PT(); void send(const RSLDC__ChanRqd& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const RSLDC__ChanRqd& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const RSLDC__ChanRqd& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const RSLDC__ChanRqd_template& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const RSLDC__ChanRqd_template& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const RSLDC__ChanRqd_template& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const RSL__Types::RSL__Message& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const RSL__Types::RSL__Message& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const RSL__Types::RSL__Message& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const RSL__Types::RSL__Message_template& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const RSL__Types::RSL__Message_template& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const RSL__Types::RSL__Message_template& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata_template& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata_template& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata_template& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); public: alt_status receive(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status receive(const RSLDC__ChanRqd_template& value_template, RSLDC__ChanRqd *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const RSLDC__ChanRqd_template& value_template, RSLDC__ChanRqd *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const RSLDC__ChanRqd_template& value_template, RSLDC__ChanRqd *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status receive(const RSL__Types::RSL__Message_template& value_template, RSL__Types::RSL__Message *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const RSL__Types::RSL__Message_template& value_template, RSL__Types::RSL__Message *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const RSL__Types::RSL__Message_template& value_template, RSL__Types::RSL__Message *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status receive(const IPA__Emulation::ASP__RSL__Unitdata_template& value_template, IPA__Emulation::ASP__RSL__Unitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const IPA__Emulation::ASP__RSL__Unitdata_template& value_template, IPA__Emulation::ASP__RSL__Unitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const IPA__Emulation::ASP__RSL__Unitdata_template& value_template, IPA__Emulation::ASP__RSL__Unitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); private: void incoming_message(const RSLDC__ChanRqd& incoming_par, component sender_component); void incoming_message(const RSL__Types::RSL__Message& incoming_par, component sender_component); void incoming_message(const IPA__Emulation::ASP__RSL__Unitdata& incoming_par, component sender_component); protected: boolean process_message(const char *message_type, Text_Buf& incoming_buf, component sender_component, OCTETSTRING& slider); }; class RSL__CCHAN__PT : public PORT { enum msg_selection { MESSAGE_0, MESSAGE_1 }; struct msg_queue_item : public msg_queue_item_base { msg_selection item_selection; union { IPA__Emulation::ASP__RSL__Unitdata *message_0; RSLEm__Event *message_1; }; component sender_component; }; void remove_msg_queue_head(); protected: void clear_queue(); public: RSL__CCHAN__PT(const char *par_port_name = NULL); ~RSL__CCHAN__PT(); void send(const IPA__Emulation::ASP__RSL__Unitdata& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata_template& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata_template& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const IPA__Emulation::ASP__RSL__Unitdata_template& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const RSLEm__Event& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const RSLEm__Event& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const RSLEm__Event& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void send(const RSLEm__Event_template& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const RSLEm__Event_template& send_par, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void send(const RSLEm__Event_template& send_par, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); public: alt_status receive(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status receive(const IPA__Emulation::ASP__RSL__Unitdata_template& value_template, IPA__Emulation::ASP__RSL__Unitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const IPA__Emulation::ASP__RSL__Unitdata_template& value_template, IPA__Emulation::ASP__RSL__Unitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const IPA__Emulation::ASP__RSL__Unitdata_template& value_template, IPA__Emulation::ASP__RSL__Unitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status receive(const RSLEm__Event_template& value_template, RSLEm__Event *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const RSLEm__Event_template& value_template, RSLEm__Event *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const RSLEm__Event_template& value_template, RSLEm__Event *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); private: void incoming_message(const IPA__Emulation::ASP__RSL__Unitdata& incoming_par, component sender_component); void incoming_message(const RSLEm__Event& incoming_par, component sender_component); protected: boolean process_message(const char *message_type, Text_Buf& incoming_buf, component sender_component, OCTETSTRING& slider); }; class RSLEM__register_call { INTEGER param_trx__nr; GSM__Types::RslChannelNr param_chan__nr; COMPONENT param_hdlr; public: inline INTEGER& trx__nr() { return param_trx__nr; } inline const INTEGER& trx__nr() const { return param_trx__nr; } inline GSM__Types::RslChannelNr& chan__nr() { return param_chan__nr; } inline const GSM__Types::RslChannelNr& chan__nr() const { return param_chan__nr; } inline COMPONENT& hdlr() { return param_hdlr; } inline const COMPONENT& hdlr() const { return param_hdlr; } void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void log() const; }; class RSLEM__register_call_redirect { INTEGER *ptr_trx__nr; GSM__Types::RslChannelNr *ptr_chan__nr; COMPONENT *ptr_hdlr; public: RSLEM__register_call_redirect(INTEGER *par_trx__nr = NULL, GSM__Types::RslChannelNr *par_chan__nr = NULL, COMPONENT *par_hdlr = NULL) : ptr_trx__nr(par_trx__nr), ptr_chan__nr(par_chan__nr), ptr_hdlr(par_hdlr) { } virtual ~RSLEM__register_call_redirect() { } virtual void set_parameters(const RSLEM__register_call& call_par) const; }; class RSLEM__register_reply { public: inline void encode_text(Text_Buf&) const { } inline void decode_text(Text_Buf&) { } void log() const; }; class RSLEM__register_reply_redirect { public: inline void set_parameters(const RSLEM__register_reply&) const {} }; class RSLEM__register_template { INTEGER_template param_trx__nr; GSM__Types::RslChannelNr_template param_chan__nr; COMPONENT_template param_hdlr; public: RSLEM__register_template(); inline INTEGER_template& trx__nr() { return param_trx__nr; } inline const INTEGER_template& trx__nr() const { return param_trx__nr; } inline GSM__Types::RslChannelNr_template& chan__nr() { return param_chan__nr; } inline const GSM__Types::RslChannelNr_template& chan__nr() const { return param_chan__nr; } inline COMPONENT_template& hdlr() { return param_hdlr; } inline const COMPONENT_template& hdlr() const { return param_hdlr; } RSLEM__register_call create_call() const; inline RSLEM__register_reply create_reply() const { return RSLEM__register_reply(); } boolean match_call(const RSLEM__register_call& match_value, boolean legacy = FALSE) const; inline boolean match_reply(const RSLEM__register_reply&, boolean legacy = FALSE) const { return TRUE; } void log() const; void log_match_call(const RSLEM__register_call& match_value, boolean legacy = FALSE) const; void log_match_reply(const RSLEM__register_reply& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEM__unregister_call { INTEGER param_trx__nr; GSM__Types::RslChannelNr param_chan__nr; COMPONENT param_hdlr; public: inline INTEGER& trx__nr() { return param_trx__nr; } inline const INTEGER& trx__nr() const { return param_trx__nr; } inline GSM__Types::RslChannelNr& chan__nr() { return param_chan__nr; } inline const GSM__Types::RslChannelNr& chan__nr() const { return param_chan__nr; } inline COMPONENT& hdlr() { return param_hdlr; } inline const COMPONENT& hdlr() const { return param_hdlr; } void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void log() const; }; class RSLEM__unregister_call_redirect { INTEGER *ptr_trx__nr; GSM__Types::RslChannelNr *ptr_chan__nr; COMPONENT *ptr_hdlr; public: RSLEM__unregister_call_redirect(INTEGER *par_trx__nr = NULL, GSM__Types::RslChannelNr *par_chan__nr = NULL, COMPONENT *par_hdlr = NULL) : ptr_trx__nr(par_trx__nr), ptr_chan__nr(par_chan__nr), ptr_hdlr(par_hdlr) { } virtual ~RSLEM__unregister_call_redirect() { } virtual void set_parameters(const RSLEM__unregister_call& call_par) const; }; class RSLEM__unregister_reply { public: inline void encode_text(Text_Buf&) const { } inline void decode_text(Text_Buf&) { } void log() const; }; class RSLEM__unregister_reply_redirect { public: inline void set_parameters(const RSLEM__unregister_reply&) const {} }; class RSLEM__unregister_template { INTEGER_template param_trx__nr; GSM__Types::RslChannelNr_template param_chan__nr; COMPONENT_template param_hdlr; public: RSLEM__unregister_template(); inline INTEGER_template& trx__nr() { return param_trx__nr; } inline const INTEGER_template& trx__nr() const { return param_trx__nr; } inline GSM__Types::RslChannelNr_template& chan__nr() { return param_chan__nr; } inline const GSM__Types::RslChannelNr_template& chan__nr() const { return param_chan__nr; } inline COMPONENT_template& hdlr() { return param_hdlr; } inline const COMPONENT_template& hdlr() const { return param_hdlr; } RSLEM__unregister_call create_call() const; inline RSLEM__unregister_reply create_reply() const { return RSLEM__unregister_reply(); } boolean match_call(const RSLEM__unregister_call& match_value, boolean legacy = FALSE) const; inline boolean match_reply(const RSLEM__unregister_reply&, boolean legacy = FALSE) const { return TRUE; } void log() const; void log_match_call(const RSLEM__unregister_call& match_value, boolean legacy = FALSE) const; void log_match_reply(const RSLEM__unregister_reply& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEM__suspend_call { BOOLEAN param_suspend; public: inline BOOLEAN& suspend() { return param_suspend; } inline const BOOLEAN& suspend() const { return param_suspend; } void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void log() const; }; class RSLEM__suspend_call_redirect { BOOLEAN *ptr_suspend; public: RSLEM__suspend_call_redirect(BOOLEAN *par_suspend = NULL) : ptr_suspend(par_suspend) { } virtual ~RSLEM__suspend_call_redirect() { } virtual void set_parameters(const RSLEM__suspend_call& call_par) const; }; class RSLEM__suspend_reply { public: inline void encode_text(Text_Buf&) const { } inline void decode_text(Text_Buf&) { } void log() const; }; class RSLEM__suspend_reply_redirect { public: inline void set_parameters(const RSLEM__suspend_reply&) const {} }; class RSLEM__suspend_template { BOOLEAN_template param_suspend; public: RSLEM__suspend_template(); inline BOOLEAN_template& suspend() { return param_suspend; } inline const BOOLEAN_template& suspend() const { return param_suspend; } RSLEM__suspend_call create_call() const; inline RSLEM__suspend_reply create_reply() const { return RSLEM__suspend_reply(); } boolean match_call(const RSLEM__suspend_call& match_value, boolean legacy = FALSE) const; inline boolean match_reply(const RSLEM__suspend_reply&, boolean legacy = FALSE) const { return TRUE; } void log() const; void log_match_call(const RSLEM__suspend_call& match_value, boolean legacy = FALSE) const; void log_match_reply(const RSLEM__suspend_reply& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEM__wait__queue_call { BOOLEAN param_enable; public: inline BOOLEAN& enable() { return param_enable; } inline const BOOLEAN& enable() const { return param_enable; } void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void log() const; }; class RSLEM__wait__queue_call_redirect { BOOLEAN *ptr_enable; public: RSLEM__wait__queue_call_redirect(BOOLEAN *par_enable = NULL) : ptr_enable(par_enable) { } virtual ~RSLEM__wait__queue_call_redirect() { } virtual void set_parameters(const RSLEM__wait__queue_call& call_par) const; }; class RSLEM__wait__queue_reply { public: inline void encode_text(Text_Buf&) const { } inline void decode_text(Text_Buf&) { } void log() const; }; class RSLEM__wait__queue_reply_redirect { public: inline void set_parameters(const RSLEM__wait__queue_reply&) const {} }; class RSLEM__wait__queue_template { BOOLEAN_template param_enable; public: RSLEM__wait__queue_template(); inline BOOLEAN_template& enable() { return param_enable; } inline const BOOLEAN_template& enable() const { return param_enable; } RSLEM__wait__queue_call create_call() const; inline RSLEM__wait__queue_reply create_reply() const { return RSLEM__wait__queue_reply(); } boolean match_call(const RSLEM__wait__queue_call& match_value, boolean legacy = FALSE) const; inline boolean match_reply(const RSLEM__wait__queue_reply&, boolean legacy = FALSE) const { return TRUE; } void log() const; void log_match_call(const RSLEM__wait__queue_call& match_value, boolean legacy = FALSE) const; void log_match_reply(const RSLEM__wait__queue_reply& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEM__get__last__act_call { INTEGER param_trx__nr; GSM__Types::RslChannelNr param_chan__nr; public: inline INTEGER& trx__nr() { return param_trx__nr; } inline const INTEGER& trx__nr() const { return param_trx__nr; } inline GSM__Types::RslChannelNr& chan__nr() { return param_chan__nr; } inline const GSM__Types::RslChannelNr& chan__nr() const { return param_chan__nr; } void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void log() const; }; class RSLEM__get__last__act_call_redirect { INTEGER *ptr_trx__nr; GSM__Types::RslChannelNr *ptr_chan__nr; public: RSLEM__get__last__act_call_redirect(INTEGER *par_trx__nr = NULL, GSM__Types::RslChannelNr *par_chan__nr = NULL) : ptr_trx__nr(par_trx__nr), ptr_chan__nr(par_chan__nr) { } virtual ~RSLEM__get__last__act_call_redirect() { } virtual void set_parameters(const RSLEM__get__last__act_call& call_par) const; }; class RSLEM__get__last__act_reply { RSL__Types::RSL__Message param_chan__act; public: inline RSL__Types::RSL__Message& chan__act() { return param_chan__act; } inline const RSL__Types::RSL__Message& chan__act() const { return param_chan__act; } void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void log() const; }; class RSLEM__get__last__act_reply_redirect { RSL__Types::RSL__Message *ptr_chan__act; public: RSLEM__get__last__act_reply_redirect(RSL__Types::RSL__Message *par_chan__act = NULL) : ptr_chan__act(par_chan__act) { } virtual ~RSLEM__get__last__act_reply_redirect() { } virtual void set_parameters(const RSLEM__get__last__act_reply& reply_par) const; }; class RSLEM__get__last__act_template { INTEGER_template param_trx__nr; GSM__Types::RslChannelNr_template param_chan__nr; RSL__Types::RSL__Message_template param_chan__act; public: RSLEM__get__last__act_template(); inline INTEGER_template& trx__nr() { return param_trx__nr; } inline const INTEGER_template& trx__nr() const { return param_trx__nr; } inline GSM__Types::RslChannelNr_template& chan__nr() { return param_chan__nr; } inline const GSM__Types::RslChannelNr_template& chan__nr() const { return param_chan__nr; } inline RSL__Types::RSL__Message_template& chan__act() { return param_chan__act; } inline const RSL__Types::RSL__Message_template& chan__act() const { return param_chan__act; } RSLEM__get__last__act_call create_call() const; RSLEM__get__last__act_reply create_reply() const; boolean match_call(const RSLEM__get__last__act_call& match_value, boolean legacy = FALSE) const; boolean match_reply(const RSLEM__get__last__act_reply& match_value, boolean legacy = FALSE) const; void log() const; void log_match_call(const RSLEM__get__last__act_call& match_value, boolean legacy = FALSE) const; void log_match_reply(const RSLEM__get__last__act_reply& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEM__set__auto__chan__act__ack_call { BOOLEAN param_enable; public: inline BOOLEAN& enable() { return param_enable; } inline const BOOLEAN& enable() const { return param_enable; } void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void log() const; }; class RSLEM__set__auto__chan__act__ack_call_redirect { BOOLEAN *ptr_enable; public: RSLEM__set__auto__chan__act__ack_call_redirect(BOOLEAN *par_enable = NULL) : ptr_enable(par_enable) { } virtual ~RSLEM__set__auto__chan__act__ack_call_redirect() { } virtual void set_parameters(const RSLEM__set__auto__chan__act__ack_call& call_par) const; }; class RSLEM__set__auto__chan__act__ack_reply { public: inline void encode_text(Text_Buf&) const { } inline void decode_text(Text_Buf&) { } void log() const; }; class RSLEM__set__auto__chan__act__ack_reply_redirect { public: inline void set_parameters(const RSLEM__set__auto__chan__act__ack_reply&) const {} }; class RSLEM__set__auto__chan__act__ack_template { BOOLEAN_template param_enable; public: RSLEM__set__auto__chan__act__ack_template(); inline BOOLEAN_template& enable() { return param_enable; } inline const BOOLEAN_template& enable() const { return param_enable; } RSLEM__set__auto__chan__act__ack_call create_call() const; inline RSLEM__set__auto__chan__act__ack_reply create_reply() const { return RSLEM__set__auto__chan__act__ack_reply(); } boolean match_call(const RSLEM__set__auto__chan__act__ack_call& match_value, boolean legacy = FALSE) const; inline boolean match_reply(const RSLEM__set__auto__chan__act__ack_reply&, boolean legacy = FALSE) const { return TRUE; } void log() const; void log_match_call(const RSLEM__set__auto__chan__act__ack_call& match_value, boolean legacy = FALSE) const; void log_match_reply(const RSLEM__set__auto__chan__act__ack_reply& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class RSLEM__PROC__PT : public PORT { enum proc_selection { CALL_0, CALL_1, CALL_2, CALL_3, CALL_4, CALL_5, REPLY_0, REPLY_1, REPLY_2, REPLY_3, REPLY_4, REPLY_5 }; struct proc_queue_item { proc_selection item_selection; union { RSLEM__register_call *call_0; RSLEM__unregister_call *call_1; RSLEM__suspend_call *call_2; RSLEM__wait__queue_call *call_3; RSLEM__get__last__act_call *call_4; RSLEM__set__auto__chan__act__ack_call *call_5; RSLEM__register_reply *reply_0; RSLEM__unregister_reply *reply_1; RSLEM__suspend_reply *reply_2; RSLEM__wait__queue_reply *reply_3; RSLEM__get__last__act_reply *reply_4; RSLEM__set__auto__chan__act__ack_reply *reply_5; }; component sender_component; proc_queue_item *next_item; } *proc_queue_head, *proc_queue_tail; void append_to_proc_queue(proc_queue_item *new_item); void remove_proc_queue_head(); protected: void clear_queue(); public: RSLEM__PROC__PT(const char *par_port_name = NULL); ~RSLEM__PROC__PT(); void call(const RSLEM__register_template& call_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__register_template& call_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__register_template& call_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__unregister_template& call_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__unregister_template& call_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__unregister_template& call_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__suspend_template& call_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__suspend_template& call_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__suspend_template& call_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__wait__queue_template& call_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__wait__queue_template& call_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__wait__queue_template& call_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__get__last__act_template& call_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__get__last__act_template& call_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__get__last__act_template& call_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__set__auto__chan__act__ack_template& call_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__set__auto__chan__act__ack_template& call_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void call(const RSLEM__set__auto__chan__act__ack_template& call_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__register_template& reply_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__register_template& reply_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__register_template& reply_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__unregister_template& reply_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__unregister_template& reply_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__unregister_template& reply_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__suspend_template& reply_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__suspend_template& reply_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__suspend_template& reply_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__wait__queue_template& reply_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__wait__queue_template& reply_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__wait__queue_template& reply_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__get__last__act_template& reply_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__get__last__act_template& reply_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__get__last__act_template& reply_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__set__auto__chan__act__ack_template& reply_template, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__set__auto__chan__act__ack_template& reply_template, size_t nof_components, const COMPONENT* destination_components, FLOAT* timestamp_redirect = NULL); void reply(const RSLEM__set__auto__chan__act__ack_template& reply_template, boolean broadcast = FALSE, FLOAT* timestamp_redirect = NULL); public: alt_status getcall(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getcall(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getcall(const RSLEM__register_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__register_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getcall(const RSLEM__register_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__register_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getcall(const RSLEM__unregister_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__unregister_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getcall(const RSLEM__unregister_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__unregister_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getcall(const RSLEM__suspend_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__suspend_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getcall(const RSLEM__suspend_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__suspend_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getcall(const RSLEM__wait__queue_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__wait__queue_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getcall(const RSLEM__wait__queue_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__wait__queue_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getcall(const RSLEM__get__last__act_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__get__last__act_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getcall(const RSLEM__get__last__act_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__get__last__act_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getcall(const RSLEM__set__auto__chan__act__ack_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__set__auto__chan__act__ack_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getcall(const RSLEM__set__auto__chan__act__ack_template& getcall_template, const COMPONENT_template& sender_template, const RSLEM__set__auto__chan__act__ack_call_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getreply(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getreply(const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getreply(const RSLEM__register_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__register_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getreply(const RSLEM__register_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__register_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getreply(const RSLEM__unregister_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__unregister_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getreply(const RSLEM__unregister_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__unregister_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getreply(const RSLEM__suspend_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__suspend_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getreply(const RSLEM__suspend_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__suspend_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getreply(const RSLEM__wait__queue_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__wait__queue_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getreply(const RSLEM__wait__queue_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__wait__queue_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getreply(const RSLEM__get__last__act_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__get__last__act_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getreply(const RSLEM__get__last__act_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__get__last__act_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status getreply(const RSLEM__set__auto__chan__act__ack_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__set__auto__chan__act__ack_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_getreply(const RSLEM__set__auto__chan__act__ack_template& getreply_template, const COMPONENT_template& sender_template, const RSLEM__set__auto__chan__act__ack_reply_redirect& param_ref, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); private: void incoming_call(const RSLEM__register_call& incoming_par, component sender_component); void incoming_call(const RSLEM__unregister_call& incoming_par, component sender_component); void incoming_call(const RSLEM__suspend_call& incoming_par, component sender_component); void incoming_call(const RSLEM__wait__queue_call& incoming_par, component sender_component); void incoming_call(const RSLEM__get__last__act_call& incoming_par, component sender_component); void incoming_call(const RSLEM__set__auto__chan__act__ack_call& incoming_par, component sender_component); void incoming_reply(const RSLEM__register_reply& incoming_par, component sender_component); void incoming_reply(const RSLEM__unregister_reply& incoming_par, component sender_component); void incoming_reply(const RSLEM__suspend_reply& incoming_par, component sender_component); void incoming_reply(const RSLEM__wait__queue_reply& incoming_par, component sender_component); void incoming_reply(const RSLEM__get__last__act_reply& incoming_par, component sender_component); void incoming_reply(const RSLEM__set__auto__chan__act__ack_reply& incoming_par, component sender_component); protected: boolean process_call(const char *signature_name, Text_Buf& incoming_buf, component sender_component); boolean process_reply(const char *signature_name, Text_Buf& incoming_buf, component sender_component); }; class ConnectionData { COMPONENT field_comp__ref; OPTIONAL< INTEGER > field_trx__nr; OPTIONAL< IPA__Types::IpaStreamId > field_stream__id; OPTIONAL< GSM__Types::RslChannelNr > field_chan__nr; OPTIONAL< OCTETSTRING > field_ra; OPTIONAL< INTEGER > field_ra__fn; public: ConnectionData(); ConnectionData(const COMPONENT& par_comp__ref, const OPTIONAL< INTEGER >& par_trx__nr, const OPTIONAL< IPA__Types::IpaStreamId >& par_stream__id, const OPTIONAL< GSM__Types::RslChannelNr >& par_chan__nr, const OPTIONAL< OCTETSTRING >& par_ra, const OPTIONAL< INTEGER >& par_ra__fn); ConnectionData(const ConnectionData& other_value); inline boolean is_component() { return FALSE; } void clean_up(); const TTCN_Typedescriptor_t* get_descriptor() const; ConnectionData& operator=(const ConnectionData& other_value); boolean operator==(const ConnectionData& other_value) const; inline boolean operator!=(const ConnectionData& other_value) const { return !(*this == other_value); } boolean is_bound() const; inline boolean is_present() const { return is_bound(); } boolean is_value() const; inline COMPONENT& comp__ref() {return field_comp__ref;} inline const COMPONENT& comp__ref() const {return field_comp__ref;} inline OPTIONAL< INTEGER >& trx__nr() {return field_trx__nr;} inline const OPTIONAL< INTEGER >& trx__nr() const {return field_trx__nr;} inline OPTIONAL< IPA__Types::IpaStreamId >& stream__id() {return field_stream__id;} inline const OPTIONAL< IPA__Types::IpaStreamId >& stream__id() const {return field_stream__id;} inline OPTIONAL< GSM__Types::RslChannelNr >& chan__nr() {return field_chan__nr;} inline const OPTIONAL< GSM__Types::RslChannelNr >& chan__nr() const {return field_chan__nr;} inline OPTIONAL< OCTETSTRING >& ra() {return field_ra;} inline const OPTIONAL< OCTETSTRING >& ra() const {return field_ra;} inline OPTIONAL< INTEGER >& ra__fn() {return field_ra__fn;} inline const OPTIONAL< INTEGER >& ra__fn() const {return field_ra__fn;} int size_of() const; void log() const; void set_implicit_omit(); void set_param(Module_Param& param); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class ConnectionData_template : public Base_Template { struct single_value_struct; union { single_value_struct *single_value; struct { unsigned int n_values; ConnectionData_template *list_value; } value_list; struct { ConnectionData_template* precondition; ConnectionData_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void set_specific(); void copy_value(const ConnectionData& other_value); void copy_template(const ConnectionData_template& other_value); public: ConnectionData_template(); ConnectionData_template(template_sel other_value); ConnectionData_template(const ConnectionData& other_value); ConnectionData_template(const OPTIONAL& other_value); ConnectionData_template(ConnectionData_template* p_precondition, ConnectionData_template* p_implied_template); ConnectionData_template(Dynamic_Match_Interface* p_dyn_match); ConnectionData_template(const ConnectionData_template& other_value); ~ConnectionData_template(); ConnectionData_template& operator=(template_sel other_value); ConnectionData_template& operator=(const ConnectionData& other_value); ConnectionData_template& operator=(const OPTIONAL& other_value); ConnectionData_template& operator=(const ConnectionData_template& other_value); boolean match(const ConnectionData& other_value, boolean legacy = FALSE) const; boolean is_bound() const; boolean is_value() const; void clean_up(); ConnectionData valueof() const; void set_type(template_sel template_type, unsigned int list_length); ConnectionData_template& list_item(unsigned int list_index) const; COMPONENT_template& comp__ref(); const COMPONENT_template& comp__ref() const; INTEGER_template& trx__nr(); const INTEGER_template& trx__nr() const; IPA__Types::IpaStreamId_template& stream__id(); const IPA__Types::IpaStreamId_template& stream__id() const; GSM__Types::RslChannelNr_template& chan__nr(); const GSM__Types::RslChannelNr_template& chan__nr() const; OCTETSTRING_template& ra(); const OCTETSTRING_template& ra() const; INTEGER_template& ra__fn(); const INTEGER_template& ra__fn() const; int size_of() const; void log() const; void log_match(const ConnectionData& match_value, boolean legacy = FALSE) const; void set_implicit_omit(); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void set_param(Module_Param& param); void check_restriction(template_res t_res, const char* t_name=NULL, boolean legacy = FALSE) const; boolean is_present(boolean legacy = FALSE) const; boolean match_omit(boolean legacy = FALSE) const; }; class LastActData { OPTIONAL< INTEGER > field_trx__nr; OPTIONAL< GSM__Types::RslChannelNr > field_chan__nr; OPTIONAL< RSL__Types::RSL__Message > field_chan__act; public: LastActData(); LastActData(const OPTIONAL< INTEGER >& par_trx__nr, const OPTIONAL< GSM__Types::RslChannelNr >& par_chan__nr, const OPTIONAL< RSL__Types::RSL__Message >& par_chan__act); LastActData(const LastActData& other_value); inline boolean is_component() { return FALSE; } void clean_up(); const TTCN_Typedescriptor_t* get_descriptor() const; LastActData& operator=(const LastActData& other_value); boolean operator==(const LastActData& other_value) const; inline boolean operator!=(const LastActData& other_value) const { return !(*this == other_value); } boolean is_bound() const; inline boolean is_present() const { return is_bound(); } boolean is_value() const; inline OPTIONAL< INTEGER >& trx__nr() {return field_trx__nr;} inline const OPTIONAL< INTEGER >& trx__nr() const {return field_trx__nr;} inline OPTIONAL< GSM__Types::RslChannelNr >& chan__nr() {return field_chan__nr;} inline const OPTIONAL< GSM__Types::RslChannelNr >& chan__nr() const {return field_chan__nr;} inline OPTIONAL< RSL__Types::RSL__Message >& chan__act() {return field_chan__act;} inline const OPTIONAL< RSL__Types::RSL__Message >& chan__act() const {return field_chan__act;} int size_of() const; void log() const; void set_implicit_omit(); void set_param(Module_Param& param); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class LastActData_template : public Base_Template { struct single_value_struct; union { single_value_struct *single_value; struct { unsigned int n_values; LastActData_template *list_value; } value_list; struct { LastActData_template* precondition; LastActData_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void set_specific(); void copy_value(const LastActData& other_value); void copy_template(const LastActData_template& other_value); public: LastActData_template(); LastActData_template(template_sel other_value); LastActData_template(const LastActData& other_value); LastActData_template(const OPTIONAL& other_value); LastActData_template(LastActData_template* p_precondition, LastActData_template* p_implied_template); LastActData_template(Dynamic_Match_Interface* p_dyn_match); LastActData_template(const LastActData_template& other_value); ~LastActData_template(); LastActData_template& operator=(template_sel other_value); LastActData_template& operator=(const LastActData& other_value); LastActData_template& operator=(const OPTIONAL& other_value); LastActData_template& operator=(const LastActData_template& other_value); boolean match(const LastActData& other_value, boolean legacy = FALSE) const; boolean is_bound() const; boolean is_value() const; void clean_up(); LastActData valueof() const; void set_type(template_sel template_type, unsigned int list_length); LastActData_template& list_item(unsigned int list_index) const; INTEGER_template& trx__nr(); const INTEGER_template& trx__nr() const; GSM__Types::RslChannelNr_template& chan__nr(); const GSM__Types::RslChannelNr_template& chan__nr() const; RSL__Types::RSL__Message_template& chan__act(); const RSL__Types::RSL__Message_template& chan__act() const; int size_of() const; void log() const; void log_match(const LastActData& match_value, boolean legacy = FALSE) const; void set_implicit_omit(); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); void set_param(Module_Param& param); void check_restriction(template_res t_res, const char* t_name=NULL, boolean legacy = FALSE) const; boolean is_present(boolean legacy = FALSE) const; boolean match_omit(boolean legacy = FALSE) const; }; class ASP__RSL__UDList : public Base_Type { struct recordof_setof_struct { int ref_count; int n_elements; IPA__Emulation::ASP__RSL__Unitdata **value_elements; } *val_ptr; static const IPA__Emulation::ASP__RSL__Unitdata UNBOUND_ELEM; private: friend boolean operator==(null_type null_value, const ASP__RSL__UDList& other_value); public: typedef IPA__Emulation::ASP__RSL__Unitdata of_type; ASP__RSL__UDList(); ASP__RSL__UDList(null_type other_value); ASP__RSL__UDList(const ASP__RSL__UDList& other_value); ~ASP__RSL__UDList(); void clean_up(); ASP__RSL__UDList& operator=(null_type other_value); ASP__RSL__UDList& operator=(const ASP__RSL__UDList& other_value); boolean operator==(null_type other_value) const; boolean operator==(const ASP__RSL__UDList& other_value) const; inline boolean operator!=(null_type other_value) const { return !(*this == other_value); } inline boolean operator!=(const ASP__RSL__UDList& other_value) const { return !(*this == other_value); } IPA__Emulation::ASP__RSL__Unitdata& operator[](int index_value); IPA__Emulation::ASP__RSL__Unitdata& operator[](const INTEGER& index_value); const IPA__Emulation::ASP__RSL__Unitdata& operator[](int index_value) const; const IPA__Emulation::ASP__RSL__Unitdata& operator[](const INTEGER& index_value) const; ASP__RSL__UDList operator<<=(int rotate_count) const; ASP__RSL__UDList operator<<=(const INTEGER& rotate_count) const; ASP__RSL__UDList operator>>=(int rotate_count) const; ASP__RSL__UDList operator>>=(const INTEGER& rotate_count) const; ASP__RSL__UDList operator+(const ASP__RSL__UDList& other_value) const; ASP__RSL__UDList substr(int index, int returncount) const; ASP__RSL__UDList replace(int index, int len, const ASP__RSL__UDList& repl) const; ASP__RSL__UDList replace(int index, int len, const ASP__RSL__UDList_template& repl) const; void set_size(int new_size); inline boolean is_bound() const {return val_ptr != NULL; } inline boolean is_present() const { return is_bound(); } boolean is_value() const; int size_of() const; int n_elem() const { return size_of(); } int lengthof() const; void log() const; void set_implicit_omit(); void set_param(Module_Param& param); void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); }; class ASP__RSL__UDList_template : public Base_Record_Of_Template { union { struct { int n_elements; IPA__Emulation::ASP__RSL__Unitdata_template **value_elements; } single_value; struct { unsigned int n_values; ASP__RSL__UDList_template *list_value; } value_list; struct { ASP__RSL__UDList_template* precondition; ASP__RSL__UDList_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void copy_value(const ASP__RSL__UDList& other_value); void copy_template(const ASP__RSL__UDList_template& other_value); static boolean match_function_specific(const Base_Type *value_ptr, int value_index, const Restricted_Length_Template *template_ptr, int template_index, boolean legacy); public: ASP__RSL__UDList_template(); ASP__RSL__UDList_template(template_sel other_value); ASP__RSL__UDList_template(null_type other_value); ASP__RSL__UDList_template(const ASP__RSL__UDList& other_value); ASP__RSL__UDList_template(const OPTIONAL& other_value); ASP__RSL__UDList_template(ASP__RSL__UDList_template* p_precondition, ASP__RSL__UDList_template* p_implied_template); ASP__RSL__UDList_template(Dynamic_Match_Interface* p_dyn_match); ASP__RSL__UDList_template(const ASP__RSL__UDList_template& other_value); ~ASP__RSL__UDList_template(); void clean_up(); ASP__RSL__UDList_template& operator=(template_sel other_value); ASP__RSL__UDList_template& operator=(null_type other_value); ASP__RSL__UDList_template& operator=(const ASP__RSL__UDList& other_value); ASP__RSL__UDList_template& operator=(const OPTIONAL& other_value); ASP__RSL__UDList_template& operator=(const ASP__RSL__UDList_template& other_value); IPA__Emulation::ASP__RSL__Unitdata_template& operator[](int index_value); IPA__Emulation::ASP__RSL__Unitdata_template& operator[](const INTEGER& index_value); const IPA__Emulation::ASP__RSL__Unitdata_template& operator[](int index_value) const; const IPA__Emulation::ASP__RSL__Unitdata_template& operator[](const INTEGER& index_value) const; void set_size(int new_size); int n_elem() const; int size_of(boolean is_size) const; inline int size_of() const { return size_of(TRUE); } inline int lengthof() const { return size_of(FALSE); } boolean match(const ASP__RSL__UDList& other_value, boolean legacy = FALSE) const; inline boolean is_bound() const {return template_selection != UNINITIALIZED_TEMPLATE; } boolean is_value() const; ASP__RSL__UDList valueof() const; ASP__RSL__UDList substr(int index, int returncount) const; ASP__RSL__UDList replace(int index, int len, const ASP__RSL__UDList_template& repl) const; ASP__RSL__UDList replace(int index, int len, const ASP__RSL__UDList& repl) const; void set_type(template_sel template_type, unsigned int list_length); ASP__RSL__UDList_template& list_item(unsigned int list_index); void log() const; void log_match(const ASP__RSL__UDList& match_value, boolean legacy = FALSE) const; void encode_text(Text_Buf& text_buf) const; void decode_text(Text_Buf& text_buf); boolean is_present(boolean legacy = FALSE) const; boolean match_omit(boolean legacy = FALSE) const; void set_implicit_omit(); void set_param(Module_Param& param); void check_restriction(template_res t_res, const char* t_name=NULL, boolean legacy = FALSE) const; boolean get_istemplate_kind(const char* type) const; }; /* Function prototypes */ extern RSLDC__ChanRqd_template ts__RSLDC__ChanRqd(const OCTETSTRING& ra, const INTEGER& fn); extern RSLDC__ChanRqd_template ts__RSLDC__ChanRqd__anyFN(const OCTETSTRING& ra); extern RSLEm__Event_template ts__RSLEm__EV(const RSLEm__EventType& ev__type, const IPA__Types::IpaStreamId& sid); extern RSLEm__Event_template tr__RSLEm__EV(const RSLEm__EventType_template& ev__type, const IPA__Types::IpaStreamId_template& sid); extern RSL__Types::RSL__Message f__rx__or__fail(const RSL__Types::RSL__Message_template& exp__rx, RSL__DCHAN__PT& rsl__pt); extern void f__chan__act__verify__tsc(const RSL__Types::RSL__Message& chan__act, const INTEGER_template& tsc); extern void f__chan__est(const OCTETSTRING& ra, const OCTETSTRING& est__l3, const GSM__Types::RslLinkId_template& link__id, const INTEGER& fn, const INTEGER_template& tsc, RSL__DCHAN__PT& rsl__pt, RSLEM__PROC__PT& rsl__proc__pt); extern void f__deact__chan(const RSL__Types::RSL__Cause& cause); extern void start_f__deact__chan(const COMPONENT& component_reference, const RSL__Types::RSL__Cause& cause); extern INTEGER f__cid__by__comp__ref(const COMPONENT& comp__ref); extern void start_f__cid__by__comp__ref(const COMPONENT& component_reference, const COMPONENT& comp__ref); extern INTEGER f__cid__by__chan__nr(const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr); extern void start_f__cid__by__chan__nr(const COMPONENT& component_reference, const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr); extern INTEGER f__cid__by__ra__fn(const OCTETSTRING& ra, const INTEGER& fn); extern void start_f__cid__by__ra__fn(const COMPONENT& component_reference, const OCTETSTRING& ra, const INTEGER& fn); extern INTEGER f__cid__by__ra__fn2(const OCTETSTRING& ra, const RSL__Types::RSL__IE__FrameNumber& fn); extern void start_f__cid__by__ra__fn2(const COMPONENT& component_reference, const OCTETSTRING& ra, const RSL__Types::RSL__IE__FrameNumber& fn); extern void f__cid__create(const OCTETSTRING& ra, const INTEGER_template& fn, const COMPONENT& comp__ref); extern void start_f__cid__create(const COMPONENT& component_reference, const OCTETSTRING& ra, const INTEGER_template& fn, const COMPONENT& comp__ref); extern void f__cid__create__cnr(const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr, const COMPONENT& comp__ref); extern void start_f__cid__create__cnr(const COMPONENT& component_reference, const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr, const COMPONENT& comp__ref); extern INTEGER f__cid__delete__cnr(const IPA__Types::IpaStreamId& stream__id, const GSM__Types::RslChannelNr& chan__nr, const COMPONENT& comp__ref); extern void start_f__cid__delete__cnr(const COMPONENT& component_reference, const IPA__Types::IpaStreamId& stream__id, const GSM__Types::RslChannelNr& chan__nr, const COMPONENT& comp__ref); extern void f__cid__clear(const INTEGER& cid); extern void start_f__cid__clear(const COMPONENT& component_reference, const INTEGER& cid); extern void f__store__last__act__data(const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr, const RSL__Types::RSL__Message& chan__act); extern void start_f__store__last__act__data(const COMPONENT& component_reference, const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr, const RSL__Types::RSL__Message& chan__act); extern RSL__Types::RSL__Message f__lookup__last__act(const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr); extern void start_f__lookup__last__act(const COMPONENT& component_reference, const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr); extern void f__last__act__table__init(); extern void start_f__last__act__table__init(const COMPONENT& component_reference); extern void f__trx__conn__map__init(); extern void start_f__trx__conn__map__init(const COMPONENT& component_reference); extern IPA__Types::IpaStreamId f__trx__conn__map__register(const INTEGER& conn__id, const IPA__Types::IpaCcmIdResp& id__resp); extern void start_f__trx__conn__map__register(const COMPONENT& component_reference, const INTEGER& conn__id, const IPA__Types::IpaCcmIdResp& id__resp); extern IPA__Types::IpaStreamId f__trx__conn__map__unregister(const INTEGER& conn__id); extern void start_f__trx__conn__map__unregister(const COMPONENT& component_reference, const INTEGER& conn__id); extern INTEGER f__trx__conn__map__resolve(const IPA__Types::IpaStreamId& id); extern void start_f__trx__conn__map__resolve(const COMPONENT& component_reference, const IPA__Types::IpaStreamId& id); extern boolean operator==(null_type null_value, const ASP__RSL__UDList& other_value); inline boolean operator!=(null_type null_value, const ASP__RSL__UDList& other_value) { return !(null_value == other_value); } extern INTEGER f__trx__by__streamId(const IPA__Types::IpaStreamId& id); extern IPA__Types::IpaStreamId f__streamId__by__trx(const INTEGER& trx__nr); extern void main_(const BOOLEAN& bts__role); extern void start_main_(const COMPONENT& component_reference, const BOOLEAN& bts__role); extern void f__conn__table__init(); extern void start_f__conn__table__init(const COMPONENT& component_reference); extern void f__WaitingQueue__dispatch(); extern void start_f__WaitingQueue__dispatch(const COMPONENT& component_reference); extern void f__rslem__register(const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr, RSLEM__PROC__PT& PT); extern void f__rslem__unregister(const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr, RSLEM__PROC__PT& PT); extern void f__rslem__suspend(RSLEM__PROC__PT& PT); extern void f__rslem__resume(RSLEM__PROC__PT& PT); extern void f__rslem__dchan__queue__enable(RSLEM__PROC__PT& PT); extern void f__rslem__dchan__queue__dispatch(RSLEM__PROC__PT& PT); extern RSL__Types::RSL__Message f__rslem__get__last__act(RSLEM__PROC__PT& PT, const INTEGER& trx__nr, const GSM__Types::RslChannelNr& chan__nr); extern void f__rslem__set__auto__chan__act__ack(RSLEM__PROC__PT& PT, const BOOLEAN& enable); extern void pre_init_module(); extern void post_init_module(); extern boolean init_comp_type(const char *component_type, boolean init_base_comps); extern boolean init_system_port(const char* component_type, const char* port_name); extern boolean start_ptc_function(const char *function_name, Text_Buf& function_arguments); /* Global variable declarations */ extern const TTCN_Typedescriptor_t& RSL__DchanHdlr_descr_; extern RSL__DCHAN__PT RSL__DchanHdlr_component_RSL; extern RSLEM__PROC__PT RSL__DchanHdlr_component_RSL__PROC; extern GSM__Types::RslChannelNr RSL__DchanHdlr_component_g__chan__nr; extern RSL__DCHAN__PT RSL__DchanHdlr_component_RSL1; extern RSLEM__PROC__PT RSL__DchanHdlr_component_RSL1__PROC; extern RSL__DCHAN__PT RSL__DchanHdlr_component_RSL2; extern RSLEM__PROC__PT RSL__DchanHdlr_component_RSL2__PROC; extern const XERdescriptor_t RSLDC__ChanRqd_ra_xer_; extern const TTCN_OERdescriptor_t RSLDC__ChanRqd_ra_oer_; extern const TTCN_Typedescriptor_t RSLDC__ChanRqd_ra_descr_; extern UNIVERSAL_CHARSTRING RSLDC__ChanRqd_ra_default_coding; extern const TTCN_Typedescriptor_t RSLDC__ChanRqd_descr_; extern const XERdescriptor_t RSLDC__ChanRqd_fn_xer_; extern const TTCN_OERdescriptor_t RSLDC__ChanRqd_fn_oer_; extern const TTCN_Typedescriptor_t RSLDC__ChanRqd_fn_descr_; extern UNIVERSAL_CHARSTRING RSLDC__ChanRqd_fn_default_coding; extern const TTCN_Typedescriptor_t RSLEm__EventType_descr_; extern UNIVERSAL_CHARSTRING RSLEm__Event_sid_default_coding; extern const TTCN_Typedescriptor_t RSLEm__Event_descr_; extern const IPA__Types::IpaStreamId_template& tr__RSLEm__EV_sid_defval; extern IPA__Types::IpaStreamId_template template_tr__RSLEm__EV_sid_defval; extern const INTEGER& f__chan__est_fn_defval; extern INTEGER const_f__chan__est_fn_defval; extern const INTEGER_template& f__chan__est_tsc_defval; extern INTEGER_template template_f__chan__est_tsc_defval; extern const TTCN_Typedescriptor_t ConnectionData_descr_; extern const XERdescriptor_t ConnectionData_trx__nr_xer_; extern const TTCN_OERdescriptor_t ConnectionData_trx__nr_oer_; extern const TTCN_Typedescriptor_t ConnectionData_trx__nr_descr_; extern UNIVERSAL_CHARSTRING ConnectionData_trx__nr_default_coding; extern UNIVERSAL_CHARSTRING ConnectionData_stream__id_default_coding; extern UNIVERSAL_CHARSTRING ConnectionData_chan__nr_default_coding; extern const XERdescriptor_t ConnectionData_ra_xer_; extern const TTCN_OERdescriptor_t ConnectionData_ra_oer_; extern const TTCN_Typedescriptor_t ConnectionData_ra_descr_; extern UNIVERSAL_CHARSTRING ConnectionData_ra_default_coding; extern const XERdescriptor_t ConnectionData_ra__fn_xer_; extern const TTCN_OERdescriptor_t ConnectionData_ra__fn_oer_; extern const TTCN_Typedescriptor_t ConnectionData_ra__fn_descr_; extern UNIVERSAL_CHARSTRING ConnectionData_ra__fn_default_coding; extern const TTCN_Typedescriptor_t LastActData_descr_; extern const XERdescriptor_t LastActData_trx__nr_xer_; extern const TTCN_OERdescriptor_t LastActData_trx__nr_oer_; extern const TTCN_Typedescriptor_t LastActData_trx__nr_descr_; extern UNIVERSAL_CHARSTRING LastActData_trx__nr_default_coding; extern UNIVERSAL_CHARSTRING LastActData_chan__nr_default_coding; extern UNIVERSAL_CHARSTRING LastActData_chan__act_default_coding; extern const TTCN_Typedescriptor_t ASP__RSL__UDList_descr_; extern const TTCN_Typedescriptor_t& RSL__Emulation__CT_descr_; extern IPA__Emulation::IPA__RSL__PT RSL__Emulation__CT_component_IPA__PT; extern RSL__DCHAN__PT RSL__Emulation__CT_component_CLIENT__PT; extern RSLEM__PROC__PT RSL__Emulation__CT_component_RSL__PROC; extern RSL__CCHAN__PT RSL__Emulation__CT_component_CCHAN__PT; extern VALUE_ARRAY RSL__Emulation__CT_component_ConnectionTable; extern ASP__RSL__UDList RSL__Emulation__CT_component_WaitingQueue; extern VALUE_ARRAY RSL__Emulation__CT_component_LastActTable; extern INTEGER RSL__Emulation__CT_component_TrxConnNum; extern VALUE_ARRAY RSL__Emulation__CT_component_TrxConnMap; extern const BOOLEAN& main__bts__role_defval; extern BOOLEAN const_main__bts__role_defval; extern const unsigned char module_checksum[]; extern TTCN_Module module_object; extern const RuntimeVersionChecker ver_checker; } /* end of namespace */ #endif