# This file was automatically generated by SWIG (http://www.swig.org).
# Version 2.0.6
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.

package Net::Radio::Location::SUPL::XS;
use base qw(Exporter);
use base qw(DynaLoader);
package Net::Radio::Location::SUPL::XSc;
bootstrap Net::Radio::Location::SUPL::XS;
package Net::Radio::Location::SUPL::XS;
@EXPORT = qw();

# ---------- BASE METHODS -------------

package Net::Radio::Location::SUPL::XS;

sub TIEHASH {
    my ($classname,$obj) = @_;
    return bless $obj, $classname;
}

sub CLEAR { }

sub FIRSTKEY { }

sub NEXTKEY { }

sub FETCH {
    my ($self,$field) = @_;
    my $member_func = "swig_${field}_get";
    $self->$member_func();
}

sub STORE {
    my ($self,$field,$newval) = @_;
    my $member_func = "swig_${field}_set";
    $self->$member_func($newval);
}

sub this {
    my $ptr = shift;
    return tied(%$ptr);
}


# ------- FUNCTION WRAPPERS --------

package Net::Radio::Location::SUPL::XS;

*encode_ulp_pdu = *Net::Radio::Location::SUPL::XSc::encode_ulp_pdu;
*decode_ulp_pdu = *Net::Radio::Location::SUPL::XSc::decode_ulp_pdu;
*ulp_pdu_to_xml = *Net::Radio::Location::SUPL::XSc::ulp_pdu_to_xml;
*dump_ulp_pdu = *Net::Radio::Location::SUPL::XSc::dump_ulp_pdu;

############# Class : Net::Radio::Location::SUPL::XS::SUPLAUTHREQ_t ##############

package Net::Radio::Location::SUPL::XS::SUPLAUTHREQ_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_sETNonce_get = *Net::Radio::Location::SUPL::XSc::SUPLAUTHREQ_t_sETNonce_get;
*swig_sETNonce_set = *Net::Radio::Location::SUPL::XSc::SUPLAUTHREQ_t_sETNonce_set;
*swig_keyIdentity2_get = *Net::Radio::Location::SUPL::XSc::SUPLAUTHREQ_t_keyIdentity2_get;
*swig_keyIdentity2_set = *Net::Radio::Location::SUPL::XSc::SUPLAUTHREQ_t_keyIdentity2_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLAUTHREQ_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLAUTHREQ_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLAUTHREQ_t_xml_dump;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLAUTHREQ_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SUPLAUTHRESP_t ##############

package Net::Radio::Location::SUPL::XS::SUPLAUTHRESP_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_sPCAuthKey_get = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_sPCAuthKey_get;
*swig_sPCAuthKey_set = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_sPCAuthKey_set;
*swig_keyIdentity3_get = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_keyIdentity3_get;
*swig_keyIdentity3_set = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_keyIdentity3_set;
*swig_statusCode_get = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_statusCode_get;
*swig_statusCode_set = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_statusCode_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLAUTHRESP_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLAUTHRESP_t_xml_dump;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLAUTHRESP_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SUPLEND_t ##############

package Net::Radio::Location::SUPL::XS::SUPLEND_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_position_get = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_position_get;
*swig_position_set = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_position_set;
*swig_statusCode_get = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_statusCode_get;
*swig_statusCode_set = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_statusCode_set;
*swig_ver_get = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_ver_get;
*swig_ver_set = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_ver_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLEND_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLEND_t_xml_dump;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLEND_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SUPLINIT_t ##############

package Net::Radio::Location::SUPL::XS::SUPLINIT_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_posMethod_get = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_posMethod_get;
*swig_posMethod_set = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_posMethod_set;
*swig_notification_get = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_notification_get;
*swig_notification_set = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_notification_set;
*swig_sLPAddress_get = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_sLPAddress_get;
*swig_sLPAddress_set = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_sLPAddress_set;
*swig_qoP_get = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_qoP_get;
*swig_qoP_set = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_qoP_set;
*swig_sLPMode_get = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_sLPMode_get;
*swig_sLPMode_set = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_sLPMode_set;
*swig_mAC_get = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_mAC_get;
*swig_mAC_set = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_mAC_set;
*swig_keyIdentity_get = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_keyIdentity_get;
*swig_keyIdentity_set = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_keyIdentity_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLINIT_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLINIT_t_xml_dump;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLINIT_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SUPLPOS_t ##############

package Net::Radio::Location::SUPL::XS::SUPLPOS_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_posPayLoad_get = *Net::Radio::Location::SUPL::XSc::SUPLPOS_t_posPayLoad_get;
*swig_posPayLoad_set = *Net::Radio::Location::SUPL::XSc::SUPLPOS_t_posPayLoad_set;
*swig_velocity_get = *Net::Radio::Location::SUPL::XSc::SUPLPOS_t_velocity_get;
*swig_velocity_set = *Net::Radio::Location::SUPL::XSc::SUPLPOS_t_velocity_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLPOS_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLPOS_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLPOS_t_xml_dump;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLPOS_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SUPLPOSINIT_t ##############

package Net::Radio::Location::SUPL::XS::SUPLPOSINIT_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_sETCapabilities_get = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_sETCapabilities_get;
*swig_sETCapabilities_set = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_sETCapabilities_set;
*swig_requestedAssistData_get = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_requestedAssistData_get;
*swig_requestedAssistData_set = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_requestedAssistData_set;
*swig_locationId_get = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_locationId_get;
*swig_locationId_set = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_locationId_set;
*swig_position_get = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_position_get;
*swig_position_set = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_position_set;
*swig_sUPLPOS_get = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_sUPLPOS_get;
*swig_sUPLPOS_set = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_sUPLPOS_set;
*swig_ver_get = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_ver_get;
*swig_ver_set = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_ver_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLPOSINIT_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_xml_dump;
*set_capabilities = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_set_capabilities;
*set_requested_assist_data = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_set_requested_assist_data;
*update_requested_assist_data = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_update_requested_assist_data;
*set_requested_assist_navigation_modell = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_set_requested_assist_navigation_modell;
*set_gsm_location_info = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_set_gsm_location_info;
*set_wcdma_location_info = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_set_wcdma_location_info;
*set_position_estimate = *Net::Radio::Location::SUPL::XSc::SUPLPOSINIT_t_set_position_estimate;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLPOSINIT_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SUPLRESPONSE_t ##############

package Net::Radio::Location::SUPL::XS::SUPLRESPONSE_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_posMethod_get = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_posMethod_get;
*swig_posMethod_set = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_posMethod_set;
*swig_sLPAddress_get = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_sLPAddress_get;
*swig_sLPAddress_set = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_sLPAddress_set;
*swig_sETAuthKey_get = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_sETAuthKey_get;
*swig_sETAuthKey_set = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_sETAuthKey_set;
*swig_keyIdentity4_get = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_keyIdentity4_get;
*swig_keyIdentity4_set = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_keyIdentity4_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLRESPONSE_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLRESPONSE_t_xml_dump;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLRESPONSE_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SUPLSTART_t ##############

package Net::Radio::Location::SUPL::XS::SUPLSTART_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_sETCapabilities_get = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_sETCapabilities_get;
*swig_sETCapabilities_set = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_sETCapabilities_set;
*swig_locationId_get = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_locationId_get;
*swig_locationId_set = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_locationId_set;
*swig_qoP_get = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_qoP_get;
*swig_qoP_set = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_qoP_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SUPLSTART_t($self);
        delete $OWNER{$self};
    }
}

*dump = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::SUPLSTART_t_xml_dump;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SUPLSTART_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::ULP_PDU_t ##############

package Net::Radio::Location::SUPL::XS::ULP_PDU_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_length_get = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_length_get;
*swig_length_set = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_length_set;
*swig_version_get = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_version_get;
*swig_version_set = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_version_set;
*swig_sessionID_get = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_sessionID_get;
*swig_sessionID_set = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_sessionID_set;
*swig_message_get = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_message_get;
*swig_message_set = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_message_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_ULP_PDU_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_ULP_PDU_t($self);
        delete $OWNER{$self};
    }
}

*set_version = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_set_version;
*copy_SlpSessionId = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_copy_SlpSessionId;
*setSetSessionId_to_imsi = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_setSetSessionId_to_imsi;
*setSetSessionId_to_msisdn = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_setSetSessionId_to_msisdn;
*copy_SetSessionId = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_copy_SetSessionId;
*copy_SessionId = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_copy_SessionId;
*set_message_type = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_set_message_type;
*encode = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_encode;
*dump = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::ULP_PDU_t_xml_dump;
sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::UlpMessage_t ##############

package Net::Radio::Location::SUPL::XS::UlpMessage_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_present_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_present_get;
*swig_present_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_present_set;
*swig_choice_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_get;
*swig_choice_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_UlpMessage_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_UlpMessage_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::UlpMessage_t_choice ##############

package Net::Radio::Location::SUPL::XS::UlpMessage_t_choice;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_msSUPLINIT_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLINIT_get;
*swig_msSUPLINIT_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLINIT_set;
*swig_msSUPLSTART_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLSTART_get;
*swig_msSUPLSTART_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLSTART_set;
*swig_msSUPLRESPONSE_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLRESPONSE_get;
*swig_msSUPLRESPONSE_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLRESPONSE_set;
*swig_msSUPLPOSINIT_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLPOSINIT_get;
*swig_msSUPLPOSINIT_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLPOSINIT_set;
*swig_msSUPLPOS_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLPOS_get;
*swig_msSUPLPOS_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLPOS_set;
*swig_msSUPLEND_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLEND_get;
*swig_msSUPLEND_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLEND_set;
*swig_msSUPLAUTHREQ_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLAUTHREQ_get;
*swig_msSUPLAUTHREQ_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLAUTHREQ_set;
*swig_msSUPLAUTHRESP_get = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLAUTHRESP_get;
*swig_msSUPLAUTHRESP_set = *Net::Radio::Location::SUPL::XSc::UlpMessage_t_choice_msSUPLAUTHRESP_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_UlpMessage_t_choice(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_UlpMessage_t_choice($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SLPAddress_t ##############

package Net::Radio::Location::SUPL::XS::SLPAddress_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_present_get = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_present_get;
*swig_present_set = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_present_set;
*swig_choice_get = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_choice_get;
*swig_choice_set = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_choice_set;
sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SLPAddress_t($self);
        delete $OWNER{$self};
    }
}

*set_ipaddress = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_set_ipaddress;
*set_fqdn = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_set_fqdn;
*is_ipv4 = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_is_ipv4;
*is_ipv6 = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_is_ipv6;
*is_ip = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_is_ip;
*is_fqdn = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_is_fqdn;
*is_valid = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_is_valid;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SLPAddress_t(@_);
    bless $self, $pkg if defined($self);
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SLPAddress_t_choice ##############

package Net::Radio::Location::SUPL::XS::SLPAddress_t_choice;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_iPAddress_get = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_choice_iPAddress_get;
*swig_iPAddress_set = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_choice_iPAddress_set;
*swig_fQDN_get = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_choice_fQDN_get;
*swig_fQDN_set = *Net::Radio::Location::SUPL::XSc::SLPAddress_t_choice_fQDN_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SLPAddress_t_choice(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SLPAddress_t_choice($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::PosPayLoad_t ##############

package Net::Radio::Location::SUPL::XS::PosPayLoad_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_present_get = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_present_get;
*swig_present_set = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_present_set;
*swig_choice_get = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_get;
*swig_choice_set = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_PosPayLoad_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_PosPayLoad_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::PosPayLoad_t_choice ##############

package Net::Radio::Location::SUPL::XS::PosPayLoad_t_choice;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_tia801payload_get = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_tia801payload_get;
*swig_tia801payload_set = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_tia801payload_set;
*swig_rrcPayload_get = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_rrcPayload_get;
*swig_rrcPayload_set = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_rrcPayload_set;
*swig_rrlpPayload_get = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_rrlpPayload_get;
*swig_rrlpPayload_set = *Net::Radio::Location::SUPL::XSc::PosPayLoad_t_choice_rrlpPayload_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_PosPayLoad_t_choice(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_PosPayLoad_t_choice($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::LocationId_t ##############

package Net::Radio::Location::SUPL::XS::LocationId_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_cellInfo_get = *Net::Radio::Location::SUPL::XSc::LocationId_t_cellInfo_get;
*swig_cellInfo_set = *Net::Radio::Location::SUPL::XSc::LocationId_t_cellInfo_set;
*swig_status_get = *Net::Radio::Location::SUPL::XSc::LocationId_t_status_get;
*swig_status_set = *Net::Radio::Location::SUPL::XSc::LocationId_t_status_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_LocationId_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_LocationId_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SessionID_t ##############

package Net::Radio::Location::SUPL::XS::SessionID_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_setSessionID_get = *Net::Radio::Location::SUPL::XSc::SessionID_t_setSessionID_get;
*swig_setSessionID_set = *Net::Radio::Location::SUPL::XSc::SessionID_t_setSessionID_set;
*swig_slpSessionID_get = *Net::Radio::Location::SUPL::XSc::SessionID_t_slpSessionID_get;
*swig_slpSessionID_set = *Net::Radio::Location::SUPL::XSc::SessionID_t_slpSessionID_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SessionID_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SessionID_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SetSessionID_t ##############

package Net::Radio::Location::SUPL::XS::SetSessionID_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_sessionId_get = *Net::Radio::Location::SUPL::XSc::SetSessionID_t_sessionId_get;
*swig_sessionId_set = *Net::Radio::Location::SUPL::XSc::SetSessionID_t_sessionId_set;
*swig_setId_get = *Net::Radio::Location::SUPL::XSc::SetSessionID_t_setId_get;
*swig_setId_set = *Net::Radio::Location::SUPL::XSc::SetSessionID_t_setId_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SetSessionID_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SetSessionID_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SETId_t ##############

package Net::Radio::Location::SUPL::XS::SETId_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_present_get = *Net::Radio::Location::SUPL::XSc::SETId_t_present_get;
*swig_present_set = *Net::Radio::Location::SUPL::XSc::SETId_t_present_set;
*swig_choice_get = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_get;
*swig_choice_set = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SETId_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SETId_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SETId_t_choice ##############

package Net::Radio::Location::SUPL::XS::SETId_t_choice;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_msisdn_get = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_msisdn_get;
*swig_msisdn_set = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_msisdn_set;
*swig_mdn_get = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_mdn_get;
*swig_mdn_set = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_mdn_set;
*swig_min_get = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_min_get;
*swig_min_set = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_min_set;
*swig_imsi_get = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_imsi_get;
*swig_imsi_set = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_imsi_set;
*swig_nai_get = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_nai_get;
*swig_nai_set = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_nai_set;
*swig_iPAddress_get = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_iPAddress_get;
*swig_iPAddress_set = *Net::Radio::Location::SUPL::XSc::SETId_t_choice_iPAddress_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SETId_t_choice(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SETId_t_choice($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::SlpSessionID_t ##############

package Net::Radio::Location::SUPL::XS::SlpSessionID_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_sessionID_get = *Net::Radio::Location::SUPL::XSc::SlpSessionID_t_sessionID_get;
*swig_sessionID_set = *Net::Radio::Location::SUPL::XSc::SlpSessionID_t_sessionID_set;
*swig_slpId_get = *Net::Radio::Location::SUPL::XSc::SlpSessionID_t_slpId_get;
*swig_slpId_set = *Net::Radio::Location::SUPL::XSc::SlpSessionID_t_slpId_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_SlpSessionID_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_SlpSessionID_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::RRLP_PDU_t ##############

package Net::Radio::Location::SUPL::XS::RRLP_PDU_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_referenceNumber_get = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_referenceNumber_get;
*swig_referenceNumber_set = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_referenceNumber_set;
*swig_component_get = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_component_get;
*swig_component_set = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_component_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_RRLP_PDU_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_RRLP_PDU_t($self);
        delete $OWNER{$self};
    }
}

*encode = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_encode;
*dump = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_dump;
*xml_dump = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_xml_dump;
*set_component_type = *Net::Radio::Location::SUPL::XSc::RRLP_PDU_t_set_component_type;
sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::RRLP_Component_t ##############

package Net::Radio::Location::SUPL::XS::RRLP_Component_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_present_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_present_get;
*swig_present_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_present_set;
*swig_choice_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_get;
*swig_choice_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_RRLP_Component_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_RRLP_Component_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::RRLP_Component_t_choice ##############

package Net::Radio::Location::SUPL::XS::RRLP_Component_t_choice;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_msrPositionReq_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_msrPositionReq_get;
*swig_msrPositionReq_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_msrPositionReq_set;
*swig_msrPositionRsp_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_msrPositionRsp_get;
*swig_msrPositionRsp_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_msrPositionRsp_set;
*swig_assistanceData_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_assistanceData_get;
*swig_assistanceData_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_assistanceData_set;
*swig_assistanceDataAck_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_assistanceDataAck_get;
*swig_assistanceDataAck_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_assistanceDataAck_set;
*swig_protocolError_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_protocolError_get;
*swig_protocolError_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_protocolError_set;
*swig_posCapabilityReq_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_posCapabilityReq_get;
*swig_posCapabilityReq_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_posCapabilityReq_set;
*swig_posCapabilityRsp_get = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_posCapabilityRsp_get;
*swig_posCapabilityRsp_set = *Net::Radio::Location::SUPL::XSc::RRLP_Component_t_choice_posCapabilityRsp_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_RRLP_Component_t_choice(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_RRLP_Component_t_choice($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::MsrPosition_Req_t ##############

package Net::Radio::Location::SUPL::XS::MsrPosition_Req_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_positionInstruct_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_positionInstruct_get;
*swig_positionInstruct_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_positionInstruct_set;
*swig_referenceAssistData_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_referenceAssistData_get;
*swig_referenceAssistData_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_referenceAssistData_set;
*swig_msrAssistData_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_msrAssistData_get;
*swig_msrAssistData_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_msrAssistData_set;
*swig_systemInfoAssistData_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_systemInfoAssistData_get;
*swig_systemInfoAssistData_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_systemInfoAssistData_set;
*swig_gps_AssistData_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_gps_AssistData_get;
*swig_gps_AssistData_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_gps_AssistData_set;
*swig_extensionContainer_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_extensionContainer_get;
*swig_extensionContainer_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_extensionContainer_set;
*swig_rel98_MsrPosition_Req_extension_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_rel98_MsrPosition_Req_extension_get;
*swig_rel98_MsrPosition_Req_extension_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_rel98_MsrPosition_Req_extension_set;
*swig_rel5_MsrPosition_Req_extension_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_rel5_MsrPosition_Req_extension_get;
*swig_rel5_MsrPosition_Req_extension_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_rel5_MsrPosition_Req_extension_set;
*swig_rel7_MsrPosition_Req_extension_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_rel7_MsrPosition_Req_extension_get;
*swig_rel7_MsrPosition_Req_extension_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Req_t_rel7_MsrPosition_Req_extension_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_MsrPosition_Req_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_MsrPosition_Req_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::MsrPosition_Rsp_t ##############

package Net::Radio::Location::SUPL::XS::MsrPosition_Rsp_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_multipleSets_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_multipleSets_get;
*swig_multipleSets_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_multipleSets_set;
*swig_referenceIdentity_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_referenceIdentity_get;
*swig_referenceIdentity_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_referenceIdentity_set;
*swig_otd_MeasureInfo_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_otd_MeasureInfo_get;
*swig_otd_MeasureInfo_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_otd_MeasureInfo_set;
*swig_locationInfo_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_locationInfo_get;
*swig_locationInfo_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_locationInfo_set;
*swig_gps_MeasureInfo_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_gps_MeasureInfo_get;
*swig_gps_MeasureInfo_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_gps_MeasureInfo_set;
*swig_locationError_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_locationError_get;
*swig_locationError_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_locationError_set;
*swig_extensionContainer_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_extensionContainer_get;
*swig_extensionContainer_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_extensionContainer_set;
*swig_rel_98_MsrPosition_Rsp_Extension_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_rel_98_MsrPosition_Rsp_Extension_get;
*swig_rel_98_MsrPosition_Rsp_Extension_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_rel_98_MsrPosition_Rsp_Extension_set;
*swig_rel_5_MsrPosition_Rsp_Extension_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_rel_5_MsrPosition_Rsp_Extension_get;
*swig_rel_5_MsrPosition_Rsp_Extension_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_rel_5_MsrPosition_Rsp_Extension_set;
*swig_rel_7_MsrPosition_Rsp_Extension_get = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_rel_7_MsrPosition_Rsp_Extension_get;
*swig_rel_7_MsrPosition_Rsp_Extension_set = *Net::Radio::Location::SUPL::XSc::MsrPosition_Rsp_t_rel_7_MsrPosition_Rsp_Extension_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_MsrPosition_Rsp_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_MsrPosition_Rsp_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::PositionInstruct_t ##############

package Net::Radio::Location::SUPL::XS::PositionInstruct_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_methodType_get = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_methodType_get;
*swig_methodType_set = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_methodType_set;
*swig_positionMethod_get = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_positionMethod_get;
*swig_positionMethod_set = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_positionMethod_set;
*swig_measureResponseTime_get = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_measureResponseTime_get;
*swig_measureResponseTime_set = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_measureResponseTime_set;
*swig_useMultipleSets_get = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_useMultipleSets_get;
*swig_useMultipleSets_set = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_useMultipleSets_set;
*swig_environmentCharacter_get = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_environmentCharacter_get;
*swig_environmentCharacter_set = *Net::Radio::Location::SUPL::XSc::PositionInstruct_t_environmentCharacter_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_PositionInstruct_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_PositionInstruct_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::MethodType_t ##############

package Net::Radio::Location::SUPL::XS::MethodType_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_present_get = *Net::Radio::Location::SUPL::XSc::MethodType_t_present_get;
*swig_present_set = *Net::Radio::Location::SUPL::XSc::MethodType_t_present_set;
*swig_choice_get = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_get;
*swig_choice_set = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_MethodType_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_MethodType_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::MethodType_t_choice ##############

package Net::Radio::Location::SUPL::XS::MethodType_t_choice;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_msAssisted_get = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msAssisted_get;
*swig_msAssisted_set = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msAssisted_set;
*swig_msBased_get = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msBased_get;
*swig_msBased_set = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msBased_set;
*swig_msBasedPref_get = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msBasedPref_get;
*swig_msBasedPref_set = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msBasedPref_set;
*swig_msAssistedPref_get = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msAssistedPref_get;
*swig_msAssistedPref_set = *Net::Radio::Location::SUPL::XSc::MethodType_t_choice_msAssistedPref_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_MethodType_t_choice(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_MethodType_t_choice($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::ProtocolError_t ##############

package Net::Radio::Location::SUPL::XS::ProtocolError_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_errorCause_get = *Net::Radio::Location::SUPL::XSc::ProtocolError_t_errorCause_get;
*swig_errorCause_set = *Net::Radio::Location::SUPL::XSc::ProtocolError_t_errorCause_set;
*swig_extensionContainer_get = *Net::Radio::Location::SUPL::XSc::ProtocolError_t_extensionContainer_get;
*swig_extensionContainer_set = *Net::Radio::Location::SUPL::XSc::ProtocolError_t_extensionContainer_set;
*swig_rel_5_ProtocolError_Extension_get = *Net::Radio::Location::SUPL::XSc::ProtocolError_t_rel_5_ProtocolError_Extension_get;
*swig_rel_5_ProtocolError_Extension_set = *Net::Radio::Location::SUPL::XSc::ProtocolError_t_rel_5_ProtocolError_Extension_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_ProtocolError_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_ProtocolError_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::LocationInfo_t ##############

package Net::Radio::Location::SUPL::XS::LocationInfo_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_refFrame_get = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_refFrame_get;
*swig_refFrame_set = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_refFrame_set;
*swig_gpsTOW_get = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_gpsTOW_get;
*swig_gpsTOW_set = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_gpsTOW_set;
*swig_fixType_get = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_fixType_get;
*swig_fixType_set = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_fixType_set;
*swig_posEstimate_get = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_posEstimate_get;
*swig_posEstimate_set = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_posEstimate_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_LocationInfo_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_LocationInfo_t($self);
        delete $OWNER{$self};
    }
}

*set_posEstimate = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_set_posEstimate;
*get_fixpoint_arith_multiplier = *Net::Radio::Location::SUPL::XSc::LocationInfo_t_get_fixpoint_arith_multiplier;
sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::AssistanceData_t ##############

package Net::Radio::Location::SUPL::XS::AssistanceData_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_referenceAssistData_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_referenceAssistData_get;
*swig_referenceAssistData_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_referenceAssistData_set;
*swig_msrAssistData_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_msrAssistData_get;
*swig_msrAssistData_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_msrAssistData_set;
*swig_systemInfoAssistData_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_systemInfoAssistData_get;
*swig_systemInfoAssistData_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_systemInfoAssistData_set;
*swig_gps_AssistData_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_gps_AssistData_get;
*swig_gps_AssistData_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_gps_AssistData_set;
*swig_moreAssDataToBeSent_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_moreAssDataToBeSent_get;
*swig_moreAssDataToBeSent_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_moreAssDataToBeSent_set;
*swig_extensionContainer_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_extensionContainer_get;
*swig_extensionContainer_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_extensionContainer_set;
*swig_rel98_AssistanceData_Extension_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_rel98_AssistanceData_Extension_get;
*swig_rel98_AssistanceData_Extension_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_rel98_AssistanceData_Extension_set;
*swig_rel5_AssistanceData_Extension_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_rel5_AssistanceData_Extension_get;
*swig_rel5_AssistanceData_Extension_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_rel5_AssistanceData_Extension_set;
*swig_rel7_AssistanceData_Extension_get = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_rel7_AssistanceData_Extension_get;
*swig_rel7_AssistanceData_Extension_set = *Net::Radio::Location::SUPL::XSc::AssistanceData_t_rel7_AssistanceData_Extension_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_AssistanceData_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_AssistanceData_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::PosCapability_Req_t ##############

package Net::Radio::Location::SUPL::XS::PosCapability_Req_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_extended_reference_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Req_t_extended_reference_get;
*swig_extended_reference_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Req_t_extended_reference_set;
*swig_gANSSPositionMethods_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Req_t_gANSSPositionMethods_get;
*swig_gANSSPositionMethods_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Req_t_gANSSPositionMethods_set;
*swig_extensionContainer_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Req_t_extensionContainer_get;
*swig_extensionContainer_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Req_t_extensionContainer_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_PosCapability_Req_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_PosCapability_Req_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


############# Class : Net::Radio::Location::SUPL::XS::PosCapability_Rsp_t ##############

package Net::Radio::Location::SUPL::XS::PosCapability_Rsp_t;
use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
@ISA = qw( Net::Radio::Location::SUPL::XS );
%OWNER = ();
%ITERATORS = ();
*swig_extended_reference_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_extended_reference_get;
*swig_extended_reference_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_extended_reference_set;
*swig_posCapabilities_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_posCapabilities_get;
*swig_posCapabilities_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_posCapabilities_set;
*swig_assistanceSupported_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_assistanceSupported_get;
*swig_assistanceSupported_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_assistanceSupported_set;
*swig_assistanceNeeded_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_assistanceNeeded_get;
*swig_assistanceNeeded_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_assistanceNeeded_set;
*swig_extensionContainer_get = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_extensionContainer_get;
*swig_extensionContainer_set = *Net::Radio::Location::SUPL::XSc::PosCapability_Rsp_t_extensionContainer_set;
sub new {
    my $pkg = shift;
    my $self = Net::Radio::Location::SUPL::XSc::new_PosCapability_Rsp_t(@_);
    bless $self, $pkg if defined($self);
}

sub DESTROY {
    return unless $_[0]->isa('HASH');
    my $self = tied(%{$_[0]});
    return unless defined $self;
    delete $ITERATORS{$self};
    if (exists $OWNER{$self}) {
        Net::Radio::Location::SUPL::XSc::delete_PosCapability_Rsp_t($self);
        delete $OWNER{$self};
    }
}

sub DISOWN {
    my $self = shift;
    my $ptr = tied(%$self);
    delete $OWNER{$ptr};
}

sub ACQUIRE {
    my $self = shift;
    my $ptr = tied(%$self);
    $OWNER{$ptr} = 1;
}


# ------- CONSTANT STUBS -------

package Net::Radio::Location::SUPL::XS;

sub setcap_pos_tech_agpsSETassisted () { $Net::Radio::Location::SUPL::XSc::setcap_pos_tech_agpsSETassisted }
sub setcap_pos_tech_agpsSETBased () { $Net::Radio::Location::SUPL::XSc::setcap_pos_tech_agpsSETBased }
sub setcap_pos_tech_autonomousGPS () { $Net::Radio::Location::SUPL::XSc::setcap_pos_tech_autonomousGPS }
sub setcap_pos_tech_aFLT () { $Net::Radio::Location::SUPL::XSc::setcap_pos_tech_aFLT }
sub setcap_pos_tech_eCID () { $Net::Radio::Location::SUPL::XSc::setcap_pos_tech_eCID }
sub setcap_pos_tech_eOTD () { $Net::Radio::Location::SUPL::XSc::setcap_pos_tech_eOTD }
sub setcap_pos_tech_oTDOA () { $Net::Radio::Location::SUPL::XSc::setcap_pos_tech_oTDOA }
sub setcap_pos_proto_tia801 () { $Net::Radio::Location::SUPL::XSc::setcap_pos_proto_tia801 }
sub setcap_pos_proto_rrlp () { $Net::Radio::Location::SUPL::XSc::setcap_pos_proto_rrlp }
sub setcap_pos_proto_rrc () { $Net::Radio::Location::SUPL::XSc::setcap_pos_proto_rrc }
sub reqassistdata_almanacRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_almanacRequested }
sub reqassistdata_utcModelRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_utcModelRequested }
sub reqassistdata_ionosphericModelRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_ionosphericModelRequested }
sub reqassistdata_dgpsCorrectionsRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_dgpsCorrectionsRequested }
sub reqassistdata_referenceLocationRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_referenceLocationRequested }
sub reqassistdata_referenceTimeRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_referenceTimeRequested }
sub reqassistdata_acquisitionAssistanceRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_acquisitionAssistanceRequested }
sub reqassistdata_realTimeIntegrityRequested () { $Net::Radio::Location::SUPL::XSc::reqassistdata_realTimeIntegrityRequested }
sub UlpMessage_PR_NOTHING () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_NOTHING }
sub UlpMessage_PR_msSUPLINIT () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLINIT }
sub UlpMessage_PR_msSUPLSTART () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLSTART }
sub UlpMessage_PR_msSUPLRESPONSE () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLRESPONSE }
sub UlpMessage_PR_msSUPLPOSINIT () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLPOSINIT }
sub UlpMessage_PR_msSUPLPOS () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLPOS }
sub UlpMessage_PR_msSUPLEND () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLEND }
sub UlpMessage_PR_msSUPLAUTHREQ () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLAUTHREQ }
sub UlpMessage_PR_msSUPLAUTHRESP () { $Net::Radio::Location::SUPL::XSc::UlpMessage_PR_msSUPLAUTHRESP }
sub SLPAddress_PR_NOTHING () { $Net::Radio::Location::SUPL::XSc::SLPAddress_PR_NOTHING }
sub SLPAddress_PR_iPAddress () { $Net::Radio::Location::SUPL::XSc::SLPAddress_PR_iPAddress }
sub SLPAddress_PR_fQDN () { $Net::Radio::Location::SUPL::XSc::SLPAddress_PR_fQDN }
sub PosPayLoad_PR_NOTHING () { $Net::Radio::Location::SUPL::XSc::PosPayLoad_PR_NOTHING }
sub PosPayLoad_PR_tia801payload () { $Net::Radio::Location::SUPL::XSc::PosPayLoad_PR_tia801payload }
sub PosPayLoad_PR_rrcPayload () { $Net::Radio::Location::SUPL::XSc::PosPayLoad_PR_rrcPayload }
sub PosPayLoad_PR_rrlpPayload () { $Net::Radio::Location::SUPL::XSc::PosPayLoad_PR_rrlpPayload }
sub SETId_PR_NOTHING () { $Net::Radio::Location::SUPL::XSc::SETId_PR_NOTHING }
sub SETId_PR_msisdn () { $Net::Radio::Location::SUPL::XSc::SETId_PR_msisdn }
sub SETId_PR_mdn () { $Net::Radio::Location::SUPL::XSc::SETId_PR_mdn }
sub SETId_PR_min () { $Net::Radio::Location::SUPL::XSc::SETId_PR_min }
sub SETId_PR_imsi () { $Net::Radio::Location::SUPL::XSc::SETId_PR_imsi }
sub SETId_PR_nai () { $Net::Radio::Location::SUPL::XSc::SETId_PR_nai }
sub SETId_PR_iPAddress () { $Net::Radio::Location::SUPL::XSc::SETId_PR_iPAddress }
sub PrefMethod_agpsSETassistedPreferred () { $Net::Radio::Location::SUPL::XSc::PrefMethod_agpsSETassistedPreferred }
sub PrefMethod_agpsSETBasedPreferred () { $Net::Radio::Location::SUPL::XSc::PrefMethod_agpsSETBasedPreferred }
sub PrefMethod_noPreference () { $Net::Radio::Location::SUPL::XSc::PrefMethod_noPreference }
sub SLPMode_proxy () { $Net::Radio::Location::SUPL::XSc::SLPMode_proxy }
sub SLPMode_nonProxy () { $Net::Radio::Location::SUPL::XSc::SLPMode_nonProxy }
sub Status_stale () { $Net::Radio::Location::SUPL::XSc::Status_stale }
sub Status_current () { $Net::Radio::Location::SUPL::XSc::Status_current }
sub Status_unknown () { $Net::Radio::Location::SUPL::XSc::Status_unknown }
sub RRLP_Component_PR_NOTHING () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_NOTHING }
sub RRLP_Component_PR_msrPositionReq () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_msrPositionReq }
sub RRLP_Component_PR_msrPositionRsp () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_msrPositionRsp }
sub RRLP_Component_PR_assistanceData () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_assistanceData }
sub RRLP_Component_PR_assistanceDataAck () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_assistanceDataAck }
sub RRLP_Component_PR_protocolError () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_protocolError }
sub RRLP_Component_PR_posCapabilityReq () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_posCapabilityReq }
sub RRLP_Component_PR_posCapabilityRsp () { $Net::Radio::Location::SUPL::XSc::RRLP_Component_PR_posCapabilityRsp }
sub MethodType_PR_NOTHING () { $Net::Radio::Location::SUPL::XSc::MethodType_PR_NOTHING }
sub MethodType_PR_msAssisted () { $Net::Radio::Location::SUPL::XSc::MethodType_PR_msAssisted }
sub MethodType_PR_msBased () { $Net::Radio::Location::SUPL::XSc::MethodType_PR_msBased }
sub MethodType_PR_msBasedPref () { $Net::Radio::Location::SUPL::XSc::MethodType_PR_msBasedPref }
sub MethodType_PR_msAssistedPref () { $Net::Radio::Location::SUPL::XSc::MethodType_PR_msAssistedPref }
sub FixType_twoDFix () { $Net::Radio::Location::SUPL::XSc::FixType_twoDFix }
sub FixType_threeDFix () { $Net::Radio::Location::SUPL::XSc::FixType_threeDFix }

# ------- VARIABLE STUBS --------

package Net::Radio::Location::SUPL::XS;

*asn_DEF_SessionID = *Net::Radio::Location::SUPL::XSc::asn_DEF_SessionID;
*asn_DEF_SetSessionID = *Net::Radio::Location::SUPL::XSc::asn_DEF_SetSessionID;
*asn_DEF_SETId = *Net::Radio::Location::SUPL::XSc::asn_DEF_SETId;
*asn_DEF_SlpSessionID = *Net::Radio::Location::SUPL::XSc::asn_DEF_SlpSessionID;
*asn_DEF_AssistanceData = *Net::Radio::Location::SUPL::XSc::asn_DEF_AssistanceData;
*asn_DEF_PosCapability_Req = *Net::Radio::Location::SUPL::XSc::asn_DEF_PosCapability_Req;
*asn_DEF_PosCapability_Rsp = *Net::Radio::Location::SUPL::XSc::asn_DEF_PosCapability_Rsp;
1;
