// This C++ header file was generated by the TTCN-3 compiler // of the TTCN-3 Test Executor version 9.0.0 // for (build@3978f7fbee0c) on Mon Jun 24 02:37:33 2024 // Copyright (c) 2000-2023 Ericsson Telecom AB // Do not edit this file unless you know what you are doing. #ifndef GTPv1U__CodecPort_HH #define GTPv1U__CodecPort_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 "IPL4asp_PortType.hh" #include "GTPU_Types.hh" #include "Misc_Helpers.hh" #if TTCN3_VERSION != 90000 #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 GTPv1U__CodecPort_HH #endif namespace GTPv1U__CodecPort { /* Forward declarations of classes */ class Gtp1uPeer; class Gtp1uPeer_template; class Gtp1uUnitdata; class Gtp1uUnitdata_template; class GTPU__PT; } /* end of namespace */ #ifndef GTPv1U__CodecPort_HH #define GTPv1U__CodecPort_HH namespace GTPv1U__CodecPort { /* Class definitions */ class Gtp1uPeer { INTEGER field_connId; CHARSTRING field_remName; INTEGER field_remPort; public: Gtp1uPeer(); Gtp1uPeer(const INTEGER& par_connId, const CHARSTRING& par_remName, const INTEGER& par_remPort); Gtp1uPeer(const Gtp1uPeer& other_value); inline boolean is_component() { return FALSE; } void clean_up(); const TTCN_Typedescriptor_t* get_descriptor() const; Gtp1uPeer& operator=(const Gtp1uPeer& other_value); boolean operator==(const Gtp1uPeer& other_value) const; inline boolean operator!=(const Gtp1uPeer& other_value) const { return !(*this == other_value); } boolean is_bound() const; inline boolean is_present() const { return is_bound(); } boolean is_value() const; inline INTEGER& connId() {return field_connId;} inline const INTEGER& connId() const {return field_connId;} inline CHARSTRING& remName() {return field_remName;} inline const CHARSTRING& remName() const {return field_remName;} inline INTEGER& remPort() {return field_remPort;} inline const INTEGER& remPort() const {return field_remPort;} inline int size_of() const {return 3;} 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 Gtp1uPeer_template : public Base_Template { struct single_value_struct; union { single_value_struct *single_value; struct { unsigned int n_values; Gtp1uPeer_template *list_value; } value_list; struct { Gtp1uPeer_template* precondition; Gtp1uPeer_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void set_specific(); void copy_value(const Gtp1uPeer& other_value); void copy_template(const Gtp1uPeer_template& other_value); public: Gtp1uPeer_template(); Gtp1uPeer_template(template_sel other_value); Gtp1uPeer_template(const Gtp1uPeer& other_value); Gtp1uPeer_template(const OPTIONAL& other_value); Gtp1uPeer_template(Gtp1uPeer_template* p_precondition, Gtp1uPeer_template* p_implied_template); Gtp1uPeer_template(Dynamic_Match_Interface* p_dyn_match); Gtp1uPeer_template(const Gtp1uPeer_template& other_value); ~Gtp1uPeer_template(); Gtp1uPeer_template& operator=(template_sel other_value); Gtp1uPeer_template& operator=(const Gtp1uPeer& other_value); Gtp1uPeer_template& operator=(const OPTIONAL& other_value); Gtp1uPeer_template& operator=(const Gtp1uPeer_template& other_value); boolean match(const Gtp1uPeer& other_value, boolean legacy = FALSE) const; boolean is_bound() const; boolean is_value() const; void clean_up(); Gtp1uPeer valueof() const; void set_type(template_sel template_type, unsigned int list_length); Gtp1uPeer_template& list_item(unsigned int list_index) const; INTEGER_template& connId(); const INTEGER_template& connId() const; CHARSTRING_template& remName(); const CHARSTRING_template& remName() const; INTEGER_template& remPort(); const INTEGER_template& remPort() const; int size_of() const; void log() const; void log_match(const Gtp1uPeer& match_value, boolean legacy = FALSE) const; 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 Gtp1uUnitdata { Gtp1uPeer field_peer; GTPU__Types::PDU__GTPU field_gtpu; public: Gtp1uUnitdata(); Gtp1uUnitdata(const Gtp1uPeer& par_peer, const GTPU__Types::PDU__GTPU& par_gtpu); Gtp1uUnitdata(const Gtp1uUnitdata& other_value); inline boolean is_component() { return FALSE; } void clean_up(); const TTCN_Typedescriptor_t* get_descriptor() const; Gtp1uUnitdata& operator=(const Gtp1uUnitdata& other_value); boolean operator==(const Gtp1uUnitdata& other_value) const; inline boolean operator!=(const Gtp1uUnitdata& other_value) const { return !(*this == other_value); } boolean is_bound() const; inline boolean is_present() const { return is_bound(); } boolean is_value() const; inline Gtp1uPeer& peer() {return field_peer;} inline const Gtp1uPeer& peer() const {return field_peer;} inline GTPU__Types::PDU__GTPU& gtpu() {return field_gtpu;} inline const GTPU__Types::PDU__GTPU& gtpu() const {return field_gtpu;} 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 Gtp1uUnitdata_template : public Base_Template { struct single_value_struct; union { single_value_struct *single_value; struct { unsigned int n_values; Gtp1uUnitdata_template *list_value; } value_list; struct { Gtp1uUnitdata_template* precondition; Gtp1uUnitdata_template* implied_template; } implication_; dynmatch_struct* dyn_match; }; void set_specific(); void copy_value(const Gtp1uUnitdata& other_value); void copy_template(const Gtp1uUnitdata_template& other_value); public: Gtp1uUnitdata_template(); Gtp1uUnitdata_template(template_sel other_value); Gtp1uUnitdata_template(const Gtp1uUnitdata& other_value); Gtp1uUnitdata_template(const OPTIONAL& other_value); Gtp1uUnitdata_template(Gtp1uUnitdata_template* p_precondition, Gtp1uUnitdata_template* p_implied_template); Gtp1uUnitdata_template(Dynamic_Match_Interface* p_dyn_match); Gtp1uUnitdata_template(const Gtp1uUnitdata_template& other_value); ~Gtp1uUnitdata_template(); Gtp1uUnitdata_template& operator=(template_sel other_value); Gtp1uUnitdata_template& operator=(const Gtp1uUnitdata& other_value); Gtp1uUnitdata_template& operator=(const OPTIONAL& other_value); Gtp1uUnitdata_template& operator=(const Gtp1uUnitdata_template& other_value); boolean match(const Gtp1uUnitdata& other_value, boolean legacy = FALSE) const; boolean is_bound() const; boolean is_value() const; void clean_up(); Gtp1uUnitdata valueof() const; void set_type(template_sel template_type, unsigned int list_length); Gtp1uUnitdata_template& list_item(unsigned int list_index) const; Gtp1uPeer_template& peer(); const Gtp1uPeer_template& peer() const; GTPU__Types::PDU__GTPU_template& gtpu(); const GTPU__Types::PDU__GTPU_template& gtpu() const; int size_of() const; void log() const; void log_match(const Gtp1uUnitdata& match_value, boolean legacy = FALSE) const; 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 GTPU__PT : public IPL4asp__PortType::IPL4asp__PT_PROVIDER { enum msg_selection { MESSAGE_0, MESSAGE_1, MESSAGE_2 }; struct msg_queue_item : public msg_queue_item_base { msg_selection item_selection; union { Gtp1uUnitdata *message_0; IPL4asp__Types::ASP__ConnId__ReadyToRelease *message_1; Socket__API__Definitions::PortEvent *message_2; }; component sender_component; }; void remove_msg_queue_head(); protected: void clear_queue(); public: GTPU__PT(const char *par_port_name = NULL); ~GTPU__PT(); void send(const Gtp1uUnitdata& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const Gtp1uUnitdata& send_par, FLOAT* timestamp_redirect = NULL); void send(const Gtp1uUnitdata_template& send_par, const COMPONENT& destination_component, FLOAT* timestamp_redirect = NULL); void send(const Gtp1uUnitdata_template& send_par, FLOAT* timestamp_redirect = NULL); public: PORT* get_provider_port(); 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 Gtp1uUnitdata_template& value_template, Gtp1uUnitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const Gtp1uUnitdata_template& value_template, Gtp1uUnitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const Gtp1uUnitdata_template& value_template, Gtp1uUnitdata *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status receive(const IPL4asp__Types::ASP__ConnId__ReadyToRelease_template& value_template, IPL4asp__Types::ASP__ConnId__ReadyToRelease *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const IPL4asp__Types::ASP__ConnId__ReadyToRelease_template& value_template, IPL4asp__Types::ASP__ConnId__ReadyToRelease *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const IPL4asp__Types::ASP__ConnId__ReadyToRelease_template& value_template, IPL4asp__Types::ASP__ConnId__ReadyToRelease *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status receive(const Socket__API__Definitions::PortEvent_template& value_template, Socket__API__Definitions::PortEvent *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status check_receive(const Socket__API__Definitions::PortEvent_template& value_template, Socket__API__Definitions::PortEvent *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); alt_status trigger(const Socket__API__Definitions::PortEvent_template& value_template, Socket__API__Definitions::PortEvent *value_redirect, const COMPONENT_template& sender_template, COMPONENT *sender_ptr, FLOAT* timestamp_redirect, Index_Redirect*); private: void incoming_message(const IPL4asp__Types::ASP__RecvFrom& incoming_par, component sender_component); void incoming_message(const Socket__API__Definitions::PortEvent& incoming_par, component sender_component); void incoming_message(const IPL4asp__Types::ASP__ConnId__ReadyToRelease& incoming_par, component sender_component); protected: void incoming_message(const IPL4asp__Types::ASP__RecvFrom& incoming_par); void incoming_message(const Socket__API__Definitions::PortEvent& incoming_par); void incoming_message(const IPL4asp__Types::ASP__ConnId__ReadyToRelease& incoming_par); boolean process_message(const char *message_type, Text_Buf& incoming_buf, component sender_component, OCTETSTRING& slider); }; /* Function prototypes */ extern void f__enc__Gtp1uUD(const Gtp1uUnitdata& in__ud, IPL4asp__Types::ASP__SendTo& out__ud); extern void f__dec__Gtp1uUD(const IPL4asp__Types::ASP__RecvFrom& in__ud, Gtp1uUnitdata& out__ud); extern void pre_init_module(); extern void post_init_module(); /* Global variable declarations */ extern const XERdescriptor_t Gtp1uPeer_connId_xer_; extern const TTCN_OERdescriptor_t Gtp1uPeer_connId_oer_; extern const TTCN_Typedescriptor_t Gtp1uPeer_connId_descr_; extern const XERdescriptor_t Gtp1uPeer_remName_xer_; extern const TTCN_Typedescriptor_t Gtp1uPeer_remName_descr_; extern const XERdescriptor_t Gtp1uPeer_remPort_xer_; extern const TTCN_OERdescriptor_t Gtp1uPeer_remPort_oer_; extern const TTCN_Typedescriptor_t Gtp1uPeer_remPort_descr_; extern const TTCN_Typedescriptor_t Gtp1uPeer_descr_; extern UNIVERSAL_CHARSTRING Gtp1uUnitdata_gtpu_default_coding; extern const TTCN_Typedescriptor_t Gtp1uUnitdata_descr_; extern const unsigned char module_checksum[]; extern TTCN_Module module_object; extern const RuntimeVersionChecker ver_checker; } /* end of namespace */ #endif