gps_pvt 0.2.1 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1889,12 +1889,12 @@ int SWIG_Ruby_arity( VALUE proc, int minimal )
1889
1889
  #define SWIGTYPE_p_llh_t swig_types[39]
1890
1890
  #define SWIGTYPE_p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__detection_t swig_types[40]
1891
1891
  #define SWIGTYPE_p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__exclusion_t swig_types[41]
1892
- #define SWIGTYPE_p_s16_t swig_types[42]
1893
- #define SWIGTYPE_p_s32_t swig_types[43]
1894
- #define SWIGTYPE_p_s8_t swig_types[44]
1895
- #define SWIGTYPE_p_satellites_t swig_types[45]
1896
- #define SWIGTYPE_p_self_t swig_types[46]
1897
- #define SWIGTYPE_p_std__vectorT_int_t swig_types[47]
1892
+ #define SWIGTYPE_p_range_correction_list_t swig_types[42]
1893
+ #define SWIGTYPE_p_s16_t swig_types[43]
1894
+ #define SWIGTYPE_p_s32_t swig_types[44]
1895
+ #define SWIGTYPE_p_s8_t swig_types[45]
1896
+ #define SWIGTYPE_p_satellites_t swig_types[46]
1897
+ #define SWIGTYPE_p_self_t swig_types[47]
1898
1898
  #define SWIGTYPE_p_std__vectorT_std__pairT_int_SBAS_SpaceNodeT_double_t__Satellite_const_p_t_t swig_types[48]
1899
1899
  #define SWIGTYPE_p_swig__GC_VALUE swig_types[49]
1900
1900
  #define SWIGTYPE_p_u16_t swig_types[50]
@@ -2465,6 +2465,7 @@ struct GPS_Measurement {
2465
2465
  L1_RANGE_RATE_SIGMA,
2466
2466
  L1_SIGNAL_STRENGTH_dBHz,
2467
2467
  L1_LOCK_SEC,
2468
+ L1_FREQUENCY,
2468
2469
  ITEMS_PREDEFINED,
2469
2470
  };
2470
2471
  void add(const int &prn, const int &key, const FloatT &value){
@@ -2475,43 +2476,8 @@ struct GPS_Measurement {
2475
2476
 
2476
2477
  template <class FloatT>
2477
2478
  struct GPS_SolverOptions_Common {
2478
- enum {
2479
- IONOSPHERIC_KLOBUCHAR,
2480
- IONOSPHERIC_SBAS,
2481
- IONOSPHERIC_NTCM_GL,
2482
- IONOSPHERIC_NONE, // which allows no correction
2483
- IONOSPHERIC_MODELS,
2484
- IONOSPHERIC_SKIP = IONOSPHERIC_MODELS, // which means delegating the next slot
2485
- };
2486
2479
  virtual GPS_Solver_GeneralOptions<FloatT> *cast_general() = 0;
2487
2480
  virtual const GPS_Solver_GeneralOptions<FloatT> *cast_general() const = 0;
2488
- std::vector<int> get_ionospheric_models() const {
2489
- typedef GPS_Solver_GeneralOptions<FloatT> general_t;
2490
- const general_t *general(this->cast_general());
2491
- std::vector<int> res;
2492
- for(int i(0); i < general_t::IONOSPHERIC_MODELS; ++i){
2493
- int v((int)(general->ionospheric_models[i]));
2494
- if(v == general_t::IONOSPHERIC_SKIP){break;}
2495
- res.push_back(v);
2496
- }
2497
- return res;
2498
- }
2499
- std::vector<int> set_ionospheric_models(const std::vector<int> &models){
2500
- typedef GPS_Solver_GeneralOptions<FloatT> general_t;
2501
- general_t *general(this->cast_general());
2502
- typedef typename general_t::ionospheric_model_t model_t;
2503
- for(int i(0), j(0), j_max(models.size()); i < general_t::IONOSPHERIC_MODELS; ++i){
2504
- model_t v(general_t::IONOSPHERIC_SKIP);
2505
- if(j < j_max){
2506
- if((models[j] >= 0) && (models[j] < general_t::IONOSPHERIC_SKIP)){
2507
- v = (model_t)models[j];
2508
- }
2509
- ++j;
2510
- }
2511
- general->ionospheric_models[i] = v;
2512
- }
2513
- return get_ionospheric_models();
2514
- }
2515
2481
  };
2516
2482
 
2517
2483
 
@@ -2541,6 +2507,26 @@ struct SBAS_SolverOptions
2541
2507
  };
2542
2508
 
2543
2509
 
2510
+ template <class FloatT>
2511
+ struct GPS_RangeCorrector
2512
+ : public GPS_Solver_Base<FloatT>::range_corrector_t {
2513
+ VALUE callback;
2514
+ GPS_RangeCorrector(const VALUE &callback_)
2515
+ : GPS_Solver_Base<FloatT>::range_corrector_t(),
2516
+ callback(callback_) {}
2517
+ bool is_available(const typename GPS_Solver_Base<FloatT>::gps_time_t &t) const {
2518
+ return false;
2519
+ }
2520
+ FloatT *calculate(
2521
+ const typename GPS_Solver_Base<FloatT>::gps_time_t &t,
2522
+ const typename GPS_Solver_Base<FloatT>::pos_t &usr_pos,
2523
+ const typename GPS_Solver_Base<FloatT>::enu_t &sat_rel_pos,
2524
+ FloatT &buf) const {
2525
+ return NULL;
2526
+ }
2527
+ };
2528
+
2529
+
2544
2530
  template <class FloatT>
2545
2531
  struct GPS_Solver
2546
2532
  : public GPS_Solver_RAIM_LSR<FloatT,
@@ -2561,19 +2547,36 @@ struct GPS_Solver
2561
2547
  sbas_t() : space_node(), options(), solver(space_node) {}
2562
2548
  } sbas;
2563
2549
  VALUE hooks;
2550
+ typedef std::vector<GPS_RangeCorrector<FloatT> > user_correctors_t;
2551
+ user_correctors_t user_correctors;
2564
2552
 
2565
2553
  static void mark(void *ptr){
2566
2554
  GPS_Solver<FloatT> *solver = (GPS_Solver<FloatT> *)ptr;
2567
- if(solver->hooks == Qnil){return;}
2568
2555
  rb_gc_mark(solver->hooks);
2556
+ for(typename user_correctors_t::const_iterator
2557
+ it(solver->user_correctors.begin()), it_end(solver->user_correctors.end());
2558
+ it != it_end; ++it){
2559
+ rb_gc_mark(it->callback);
2560
+ }
2569
2561
  }
2570
2562
 
2571
- GPS_Solver() : super_t(), gps(), sbas(), hooks() {
2572
- gps.solver.space_node_sbas = &sbas.space_node;
2573
- sbas.solver.space_node_gps = &gps.space_node;
2563
+ GPS_Solver() : super_t(),
2564
+ gps(), sbas(),
2565
+ hooks(), user_correctors() {
2574
2566
 
2575
2567
  hooks = rb_hash_new();
2576
2568
 
2569
+ typename base_t::range_correction_t ionospheric, tropospheric;
2570
+ ionospheric.push_back(&sbas.solver.ionospheric_sbas);
2571
+ ionospheric.push_back(&gps.solver.ionospheric_klobuchar);
2572
+ tropospheric.push_back(&sbas.solver.tropospheric_sbas);
2573
+ tropospheric.push_back(&gps.solver.tropospheric_simplified);
2574
+ gps.solver.ionospheric_correction
2575
+ = sbas.solver.ionospheric_correction
2576
+ = ionospheric;
2577
+ gps.solver.tropospheric_correction
2578
+ = sbas.solver.tropospheric_correction
2579
+ = tropospheric;
2577
2580
  }
2578
2581
  GPS_SpaceNode<FloatT> &gps_space_node() {return gps.space_node;}
2579
2582
  GPS_SolverOptions<FloatT> &gps_options() {return gps.options;}
@@ -2613,6 +2616,53 @@ struct GPS_Solver
2613
2616
  const_cast<sbas_t &>(sbas).solver.update_options(sbas.options);
2614
2617
  return super_t::solve().user_pvt(measurement.items, receiver_time);
2615
2618
  }
2619
+ typedef
2620
+ std::map<int, std::vector<const typename base_t::range_corrector_t *> >
2621
+ range_correction_list_t;
2622
+ range_correction_list_t update_correction(
2623
+ const bool &update,
2624
+ const range_correction_list_t &list = range_correction_list_t()){
2625
+ range_correction_list_t res;
2626
+ typename base_t::range_correction_t *root[] = {
2627
+ &gps.solver.ionospheric_correction,
2628
+ &gps.solver.tropospheric_correction,
2629
+ &sbas.solver.ionospheric_correction,
2630
+ &sbas.solver.tropospheric_correction,
2631
+ };
2632
+ for(std::size_t i(0); i < sizeof(root) / sizeof(root[0]); ++i){
2633
+ do{
2634
+ if(!update){break;}
2635
+ typename range_correction_list_t::const_iterator it(list.find(i));
2636
+ if(it == list.end()){break;}
2637
+
2638
+ // Remove user defined unused correctors
2639
+ for(typename base_t::range_correction_t::const_iterator
2640
+ it2(root[i]->begin()), it2_end(root[i]->end());
2641
+ it2 != it2_end; ++it2){
2642
+ for(typename user_correctors_t::const_iterator
2643
+ it3(user_correctors.begin()), it3_end(user_correctors.end());
2644
+ it3 != it3_end; ++it3){
2645
+ if(*it2 != &(*it3)){continue;}
2646
+ user_correctors.erase(it3);
2647
+ }
2648
+ }
2649
+
2650
+ root[i]->clear();
2651
+ for(typename range_correction_list_t::mapped_type::const_iterator
2652
+ it2(it->second.begin()), it2_end(it->second.end());
2653
+ it2 != it2_end; ++it2){
2654
+ root[i]->push_back(*it2);
2655
+ }
2656
+ }while(false);
2657
+ for(typename base_t::range_correction_t::const_iterator
2658
+ it(root[i]->begin()), it_end(root[i]->end());
2659
+ it != it_end; ++it){
2660
+ res[i].push_back(*it);
2661
+ }
2662
+ }
2663
+ return res;
2664
+ }
2665
+ VALUE update_correction(const bool &update, const VALUE &hash);
2616
2666
  };
2617
2667
 
2618
2668
 
@@ -2846,10 +2896,19 @@ SWIG_AsVal_unsigned_SS_int (VALUE obj, unsigned int *val)
2846
2896
  return res;
2847
2897
  }
2848
2898
 
2899
+ SWIGINTERN GPS_Time< double > *new_GPS_Time_Sl_double_Sg___SWIG_4(int const &week_,GPS_Time< double >::float_t const &seconds_,void *dummy){
2900
+ return &((new GPS_Time<double>(week_, seconds_))->canonicalize());
2901
+ }
2849
2902
  SWIGINTERN void GPS_Time_Sl_double_Sg__to_a(GPS_Time< double > const *self,int *week,double *seconds){
2850
2903
  *week = self->week;
2851
2904
  *seconds = self->seconds;
2852
2905
  }
2906
+ SWIGINTERN int GPS_Time_Sl_double_Sg____cmp__(GPS_Time< double > const *self,GPS_Time< double > const &t){
2907
+ return ((self->week < t.week) ? -1
2908
+ : ((self->week > t.week) ? 1
2909
+ : (self->seconds < t.seconds ? -1
2910
+ : (self->seconds > t.seconds ? 1 : 0))));
2911
+ }
2853
2912
 
2854
2913
  namespace swig {
2855
2914
  template <class Type>
@@ -3645,12 +3704,6 @@ SWIGINTERN double GPS_SolverOptions_Common_Sl_double_Sg__set_residual_mask(GPS_S
3645
3704
  SWIGINTERN double const &GPS_SolverOptions_Common_Sl_double_Sg__get_residual_mask(GPS_SolverOptions_Common< double > const *self){
3646
3705
  return self->cast_general()->residual_mask;
3647
3706
  }
3648
- SWIGINTERN double GPS_SolverOptions_Common_Sl_double_Sg__set_f_10_7(GPS_SolverOptions_Common< double > *self,double const &v){
3649
- return self->cast_general()->f_10_7 = v;
3650
- }
3651
- SWIGINTERN double const &GPS_SolverOptions_Common_Sl_double_Sg__get_f_10_7(GPS_SolverOptions_Common< double > const *self){
3652
- return self->cast_general()->f_10_7;
3653
- }
3654
3707
 
3655
3708
  template <>
3656
3709
  GPS_Solver<double>::base_t::relative_property_t
@@ -3730,7 +3783,9 @@ SWIGINTERN double const &GPS_SolverOptions_Common_Sl_double_Sg__get_f_10_7(GPS_S
3730
3783
  SWIG_NewPointerObj(&geomat_.W,
3731
3784
  SWIGTYPE_p_MatrixT_double_Array2D_DenseT_double_t_MatrixViewBaseT_t_t, 0),
3732
3785
  SWIG_NewPointerObj(&geomat_.delta_r,
3733
- SWIGTYPE_p_MatrixT_double_Array2D_DenseT_double_t_MatrixViewBaseT_t_t, 0)};
3786
+ SWIGTYPE_p_MatrixT_double_Array2D_DenseT_double_t_MatrixViewBaseT_t_t, 0),
3787
+ SWIG_NewPointerObj(&res,
3788
+ SWIGTYPE_p_GPS_User_PVTT_double_t, 0)};
3734
3789
  proc_call_throw_if_error(hook, sizeof(values) / sizeof(values[0]), values);
3735
3790
  }while(false);
3736
3791
 
@@ -3782,6 +3837,144 @@ SWIGINTERN double const &GPS_SolverOptions_Common_Sl_double_Sg__get_f_10_7(GPS_S
3782
3837
  return res;
3783
3838
  }
3784
3839
 
3840
+
3841
+ template <>
3842
+ bool GPS_RangeCorrector<double>::is_available(
3843
+ const typename GPS_Solver_Base<double>::gps_time_t &t) const {
3844
+ VALUE values[] = {
3845
+ SWIG_NewPointerObj(
3846
+ const_cast< GPS_Time<double> * >(&t), SWIGTYPE_p_GPS_TimeT_double_t, 0),
3847
+ };
3848
+ VALUE res(proc_call_throw_if_error(
3849
+ callback, sizeof(values) / sizeof(values[0]), values));
3850
+ return RTEST(res) ? true : false;
3851
+ }
3852
+ template <>
3853
+ double *GPS_RangeCorrector<double>::calculate(
3854
+ const typename GPS_Solver_Base<double>::gps_time_t &t,
3855
+ const typename GPS_Solver_Base<double>::pos_t &usr_pos,
3856
+ const typename GPS_Solver_Base<double>::enu_t &sat_rel_pos,
3857
+ double &buf) const {
3858
+ VALUE values[] = {
3859
+ SWIG_NewPointerObj(
3860
+ const_cast< GPS_Time<double> * >(&t),
3861
+ SWIGTYPE_p_GPS_TimeT_double_t, 0),
3862
+ SWIG_NewPointerObj(
3863
+ (const_cast< System_XYZ<double,WGS84> * >(&usr_pos.xyz)),
3864
+ SWIGTYPE_p_System_XYZT_double_WGS84_t, 0),
3865
+ SWIG_NewPointerObj(
3866
+ (const_cast< System_ENU<double,WGS84> * >(&sat_rel_pos)),
3867
+ SWIGTYPE_p_System_ENUT_double_WGS84_t, 0),
3868
+ };
3869
+ VALUE res(proc_call_throw_if_error(
3870
+ callback, sizeof(values) / sizeof(values[0]), values));
3871
+ return SWIG_IsOK(swig::asval(res, &buf)) ? &buf : NULL;
3872
+ }
3873
+ template<>
3874
+ VALUE GPS_Solver<double>::update_correction(
3875
+ const bool &update, const VALUE &hash){
3876
+ typedef range_correction_list_t list_t;
3877
+ static const VALUE k_root[] = {
3878
+ ID2SYM(rb_intern("gps_ionospheric")),
3879
+ ID2SYM(rb_intern("gps_tropospheric")),
3880
+ ID2SYM(rb_intern("sbas_ionospheric")),
3881
+ ID2SYM(rb_intern("sbas_tropospheric")),
3882
+ };
3883
+ static const VALUE k_opt(ID2SYM(rb_intern("options")));
3884
+ static const VALUE k_f_10_7(ID2SYM(rb_intern("f_10_7")));
3885
+ static const VALUE k_known(ID2SYM(rb_intern("known")));
3886
+ struct {
3887
+ VALUE sym;
3888
+ list_t::mapped_type::value_type obj;
3889
+ } item[] = {
3890
+ {ID2SYM(rb_intern("no_correction")), &base_t::no_correction},
3891
+ {ID2SYM(rb_intern("klobuchar")), &this->gps.solver.ionospheric_klobuchar},
3892
+ {ID2SYM(rb_intern("ntcm_gl")), &this->gps.solver.ionospheric_ntcm_gl},
3893
+ {ID2SYM(rb_intern("hopfield")), &this->gps.solver.tropospheric_simplified},
3894
+ {ID2SYM(rb_intern("sbas_igp")), &this->sbas.solver.ionospheric_sbas},
3895
+ {ID2SYM(rb_intern("sbas_tropo")), &this->sbas.solver.tropospheric_sbas},
3896
+ };
3897
+ list_t input;
3898
+ if(update){
3899
+ if(!RB_TYPE_P(hash, T_HASH)){
3900
+ throw std::runtime_error(
3901
+ std::string("Hash is expected, however ").append(inspect_str(hash)));
3902
+ }
3903
+ for(std::size_t i(0); i < sizeof(k_root) / sizeof(k_root[0]); ++i){
3904
+ VALUE ary = rb_hash_lookup(hash, k_root[i]);
3905
+ if(NIL_P(ary)){continue;}
3906
+ if(!RB_TYPE_P(ary, T_ARRAY)){
3907
+ ary = rb_ary_new_from_values(1, &ary);
3908
+ }
3909
+ for(int j(0); j < RARRAY_LEN(ary); ++j){
3910
+ std::size_t k(0);
3911
+ VALUE v(rb_ary_entry(ary, j));
3912
+ for(; k < sizeof(item) / sizeof(item[0]); ++k){
3913
+ if(v == item[k].sym){break;}
3914
+ }
3915
+ if(k >= sizeof(item) / sizeof(item[0])){ // other than symbol
3916
+ user_correctors.push_back(GPS_RangeCorrector<double>(v));
3917
+ input[i].push_back(&user_correctors.back());
3918
+ }else{
3919
+ input[i].push_back(item[k].obj);
3920
+ }
3921
+ }
3922
+ }
3923
+ VALUE opt(rb_hash_lookup(hash, k_opt));
3924
+ if(RB_TYPE_P(opt, T_HASH)){
3925
+ swig::asval(rb_hash_lookup(opt, k_f_10_7), // ntcm_gl
3926
+ &this->gps.solver.ionospheric_ntcm_gl.f_10_7);
3927
+ }
3928
+ }
3929
+ list_t output(update_correction(update, input));
3930
+ VALUE res = rb_hash_new();
3931
+ for(list_t::const_iterator it(output.begin()), it_end(output.end());
3932
+ it != it_end; ++it){
3933
+ VALUE k;
3934
+ if((it->first < 0) || (it->first >= (int)(sizeof(k_root) / sizeof(k_root[0])))){
3935
+ k = SWIG_From_int (it->first);
3936
+ }else{
3937
+ k = k_root[it->first];
3938
+ }
3939
+ VALUE v = rb_ary_new();
3940
+ for(list_t::mapped_type::const_iterator
3941
+ it2(it->second.begin()), it2_end(it->second.end());
3942
+ it2 != it2_end; ++it2){
3943
+ std::size_t i(0);
3944
+ for(; i < sizeof(item) / sizeof(item[0]); ++i){
3945
+ if(*it2 == item[i].obj){break;}
3946
+ }
3947
+ if(i >= sizeof(item) / sizeof(item[0])){ // other than built-in corrector
3948
+ rb_ary_push(v,
3949
+ reinterpret_cast<const GPS_RangeCorrector<double> *>(*it2)->callback);
3950
+ }else{
3951
+ rb_ary_push(v, item[i].sym);
3952
+ }
3953
+ }
3954
+ rb_hash_aset(res, k, v);
3955
+ }
3956
+ { // common options
3957
+ VALUE opt = rb_hash_new();
3958
+ rb_hash_aset(res, k_opt, opt);
3959
+ rb_hash_aset(opt, k_f_10_7, // ntcm_gl
3960
+ swig::from(this->gps.solver.ionospheric_ntcm_gl.f_10_7));
3961
+ }
3962
+ { // known models
3963
+ VALUE ary = rb_ary_new_capa((int)(sizeof(item) / sizeof(item[0])));
3964
+ for(std::size_t i(0); i < sizeof(item) / sizeof(item[0]); ++i){
3965
+ rb_ary_push(ary, item[i].sym);
3966
+ }
3967
+ rb_hash_aset(res, k_known, ary);
3968
+ }
3969
+ return res;
3970
+ }
3971
+
3972
+ SWIGINTERN VALUE GPS_Solver_Sl_double_Sg__get_correction(GPS_Solver< double > const *self){
3973
+ return const_cast<GPS_Solver<double> *>(self)->update_correction(false, Qnil);
3974
+ }
3975
+ SWIGINTERN VALUE GPS_Solver_Sl_double_Sg__set_correction(GPS_Solver< double > *self,VALUE hash){
3976
+ return self->update_correction(true, hash);
3977
+ }
3785
3978
  SWIGINTERN unsigned int SBAS_Ephemeris_Sl_double_Sg__set_svid(SBAS_Ephemeris< double > *self,unsigned int const &v){
3786
3979
  return self->svid = v;
3787
3980
  }
@@ -4452,9 +4645,9 @@ fail:
4452
4645
  call-seq:
4453
4646
  Time.new
4454
4647
  Time.new(Time t)
4455
- Time.new(int const & _week, GPS_Time< double >::float_t const & _seconds)
4456
4648
  Time.new(std::tm const & t, GPS_Time< double >::float_t const & leap_seconds=0)
4457
4649
  Time.new(std::tm const & t)
4650
+ Time.new(int const & week_, GPS_Time< double >::float_t const & seconds_)
4458
4651
 
4459
4652
  Class constructor.
4460
4653
 
@@ -4520,105 +4713,6 @@ fail:
4520
4713
 
4521
4714
  SWIGINTERN VALUE
4522
4715
  _wrap_new_Time__SWIG_2(int argc, VALUE *argv, VALUE self) {
4523
- int *arg1 = 0 ;
4524
- GPS_Time< double >::float_t *arg2 = 0 ;
4525
- int temp1 ;
4526
- int val1 ;
4527
- int ecode1 = 0 ;
4528
- GPS_Time< double >::float_t temp2 ;
4529
- double val2 ;
4530
- int ecode2 = 0 ;
4531
- GPS_Time< double > *result = 0 ;
4532
-
4533
- if ((argc < 2) || (argc > 2)) {
4534
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
4535
- }
4536
- ecode1 = SWIG_AsVal_int(argv[0], &val1);
4537
- if (!SWIG_IsOK(ecode1)) {
4538
- SWIG_exception_fail(SWIG_ArgError(ecode1), Ruby_Format_TypeError( "", "int","GPS_Time<(double)>", 1, argv[0] ));
4539
- }
4540
- temp1 = static_cast< int >(val1);
4541
- arg1 = &temp1;
4542
- ecode2 = SWIG_AsVal_double(argv[1], &val2);
4543
- if (!SWIG_IsOK(ecode2)) {
4544
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "GPS_Time< double >::float_t","GPS_Time<(double)>", 2, argv[1] ));
4545
- }
4546
- temp2 = static_cast< GPS_Time< double >::float_t >(val2);
4547
- arg2 = &temp2;
4548
- {
4549
- try {
4550
- result = (GPS_Time< double > *)new GPS_Time< double >((int const &)*arg1,(GPS_Time< double >::float_t const &)*arg2);
4551
- DATA_PTR(self) = result;
4552
- } catch (const native_exception &e) {
4553
- e.regenerate();
4554
- SWIG_fail;
4555
- } catch (const std::exception& e) {
4556
- SWIG_exception_fail(SWIG_RuntimeError, e.what());
4557
- }
4558
- }
4559
- return self;
4560
- fail:
4561
- return Qnil;
4562
- }
4563
-
4564
-
4565
- /*
4566
- Document-method: GPS_PVT::GPS::Time.canonicalize
4567
-
4568
- call-seq:
4569
- canonicalize -> Time
4570
-
4571
- An instance method.
4572
-
4573
- */
4574
- SWIGINTERN VALUE
4575
- _wrap_Time_canonicalize(int argc, VALUE *argv, VALUE self) {
4576
- GPS_Time< double > *arg1 = (GPS_Time< double > *) 0 ;
4577
- void *argp1 = 0 ;
4578
- int res1 = 0 ;
4579
- GPS_Time< double > *result = 0 ;
4580
- VALUE vresult = Qnil;
4581
-
4582
- if ((argc < 0) || (argc > 0)) {
4583
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
4584
- }
4585
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_TimeT_double_t, 0 | 0 );
4586
- if (!SWIG_IsOK(res1)) {
4587
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_Time< double > *","canonicalize", 1, self ));
4588
- }
4589
- arg1 = reinterpret_cast< GPS_Time< double > * >(argp1);
4590
- {
4591
- try {
4592
- result = (GPS_Time< double > *) &(arg1)->canonicalize();
4593
- } catch (const native_exception &e) {
4594
- e.regenerate();
4595
- SWIG_fail;
4596
- } catch (const std::exception& e) {
4597
- SWIG_exception_fail(SWIG_RuntimeError, e.what());
4598
- }
4599
- }
4600
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_GPS_TimeT_double_t, 0 | 0 );
4601
- return vresult;
4602
- fail:
4603
- return Qnil;
4604
- }
4605
-
4606
-
4607
- /*
4608
- Document-method: GPS_PVT::GPS::Time.new
4609
-
4610
- call-seq:
4611
- Time.new
4612
- Time.new(Time t)
4613
- Time.new(int const & _week, GPS_Time< double >::float_t const & _seconds)
4614
- Time.new(std::tm const & t, GPS_Time< double >::float_t const & leap_seconds=0)
4615
- Time.new(std::tm const & t)
4616
-
4617
- Class constructor.
4618
-
4619
- */
4620
- SWIGINTERN VALUE
4621
- _wrap_new_Time__SWIG_3(int argc, VALUE *argv, VALUE self) {
4622
4716
  std::tm *arg1 = 0 ;
4623
4717
  GPS_Time< double >::float_t *arg2 = 0 ;
4624
4718
  std::tm temp1 = {
@@ -4686,22 +4780,7 @@ fail:
4686
4780
 
4687
4781
 
4688
4782
  SWIGINTERN VALUE
4689
- #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
4690
- _wrap_Time_allocate(VALUE self)
4691
- #else
4692
- _wrap_Time_allocate(int argc, VALUE *argv, VALUE self)
4693
- #endif
4694
- {
4695
- VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_GPS_TimeT_double_t);
4696
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
4697
- rb_obj_call_init(vresult, argc, argv);
4698
- #endif
4699
- return vresult;
4700
- }
4701
-
4702
-
4703
- SWIGINTERN VALUE
4704
- _wrap_new_Time__SWIG_4(int argc, VALUE *argv, VALUE self) {
4783
+ _wrap_new_Time__SWIG_3(int argc, VALUE *argv, VALUE self) {
4705
4784
  std::tm *arg1 = 0 ;
4706
4785
  std::tm temp1 = {
4707
4786
  0
@@ -4758,81 +4837,6 @@ fail:
4758
4837
  }
4759
4838
 
4760
4839
 
4761
- SWIGINTERN VALUE _wrap_new_Time(int nargs, VALUE *args, VALUE self) {
4762
- int argc;
4763
- VALUE argv[2];
4764
- int ii;
4765
-
4766
- argc = nargs;
4767
- if (argc > 2) SWIG_fail;
4768
- for (ii = 0; (ii < argc); ++ii) {
4769
- argv[ii] = args[ii];
4770
- }
4771
- if (argc == 0) {
4772
- return _wrap_new_Time__SWIG_0(nargs, args, self);
4773
- }
4774
- if (argc == 1) {
4775
- int _v;
4776
- void *vptr = 0;
4777
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_TimeT_double_t, SWIG_POINTER_NO_NULL);
4778
- _v = SWIG_CheckState(res);
4779
- if (_v) {
4780
- return _wrap_new_Time__SWIG_1(nargs, args, self);
4781
- }
4782
- }
4783
- if (argc == 1) {
4784
- int _v;
4785
- {
4786
- _v = (TYPE(argv[0]) == T_ARRAY) ? 1 : 0;
4787
- }
4788
- if (_v) {
4789
- return _wrap_new_Time__SWIG_4(nargs, args, self);
4790
- }
4791
- }
4792
- if (argc == 2) {
4793
- int _v;
4794
- {
4795
- _v = (TYPE(argv[0]) == T_ARRAY) ? 1 : 0;
4796
- }
4797
- if (_v) {
4798
- {
4799
- int res = SWIG_AsVal_double(argv[1], NULL);
4800
- _v = SWIG_CheckState(res);
4801
- }
4802
- if (_v) {
4803
- return _wrap_new_Time__SWIG_3(nargs, args, self);
4804
- }
4805
- }
4806
- }
4807
- if (argc == 2) {
4808
- int _v;
4809
- {
4810
- int res = SWIG_AsVal_int(argv[0], NULL);
4811
- _v = SWIG_CheckState(res);
4812
- }
4813
- if (_v) {
4814
- {
4815
- int res = SWIG_AsVal_double(argv[1], NULL);
4816
- _v = SWIG_CheckState(res);
4817
- }
4818
- if (_v) {
4819
- return _wrap_new_Time__SWIG_2(nargs, args, self);
4820
- }
4821
- }
4822
- }
4823
-
4824
- fail:
4825
- Ruby_Format_OverloadedError( argc, 2, "Time.new",
4826
- " Time.new()\n"
4827
- " Time.new(GPS_Time< double > const &t)\n"
4828
- " Time.new(int const &_week, GPS_Time< double >::float_t const &_seconds)\n"
4829
- " Time.new(std::tm const &t, GPS_Time< double >::float_t const &leap_seconds)\n"
4830
- " Time.new(std::tm const &t)\n");
4831
-
4832
- return Qnil;
4833
- }
4834
-
4835
-
4836
4840
  /*
4837
4841
  Document-method: GPS_PVT::GPS::Time.now
4838
4842
 
@@ -6044,21 +6048,170 @@ fail:
6044
6048
  }
6045
6049
 
6046
6050
 
6047
- /*
6048
- Document-method: GPS_PVT::GPS::Time.to_a
6049
-
6050
- call-seq:
6051
- to_a
6052
-
6053
- Convert Time to an Array.
6054
- */
6055
6051
  SWIGINTERN VALUE
6056
- _wrap_Time_to_a(int argc, VALUE *argv, VALUE self) {
6057
- GPS_Time< double > *arg1 = (GPS_Time< double > *) 0 ;
6058
- int *arg2 = (int *) 0 ;
6059
- double *arg3 = (double *) 0 ;
6060
- void *argp1 = 0 ;
6061
- int res1 = 0 ;
6052
+ #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
6053
+ _wrap_Time_allocate(VALUE self)
6054
+ #else
6055
+ _wrap_Time_allocate(int argc, VALUE *argv, VALUE self)
6056
+ #endif
6057
+ {
6058
+ VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_GPS_TimeT_double_t);
6059
+ #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
6060
+ rb_obj_call_init(vresult, argc, argv);
6061
+ #endif
6062
+ return vresult;
6063
+ }
6064
+
6065
+
6066
+ /*
6067
+ Document-method: GPS_PVT::GPS::Time.new
6068
+
6069
+ call-seq:
6070
+ Time.new
6071
+ Time.new(Time t)
6072
+ Time.new(std::tm const & t, GPS_Time< double >::float_t const & leap_seconds=0)
6073
+ Time.new(std::tm const & t)
6074
+ Time.new(int const & week_, GPS_Time< double >::float_t const & seconds_)
6075
+
6076
+ Class constructor.
6077
+
6078
+ */
6079
+ SWIGINTERN VALUE
6080
+ _wrap_new_Time__SWIG_4(int argc, VALUE *argv, VALUE self) {
6081
+ int *arg1 = 0 ;
6082
+ GPS_Time< double >::float_t *arg2 = 0 ;
6083
+ void *arg3 = (void *) 0 ;
6084
+ int temp1 ;
6085
+ int val1 ;
6086
+ int ecode1 = 0 ;
6087
+ GPS_Time< double >::float_t temp2 ;
6088
+ double val2 ;
6089
+ int ecode2 = 0 ;
6090
+ GPS_Time< double > *result = 0 ;
6091
+
6092
+
6093
+ if ((argc < 2) || (argc > 2)) {
6094
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
6095
+ }
6096
+ ecode1 = SWIG_AsVal_int(argv[0], &val1);
6097
+ if (!SWIG_IsOK(ecode1)) {
6098
+ SWIG_exception_fail(SWIG_ArgError(ecode1), Ruby_Format_TypeError( "", "int","GPS_Time<(double)>", 1, argv[0] ));
6099
+ }
6100
+ temp1 = static_cast< int >(val1);
6101
+ arg1 = &temp1;
6102
+ ecode2 = SWIG_AsVal_double(argv[1], &val2);
6103
+ if (!SWIG_IsOK(ecode2)) {
6104
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "GPS_Time< double >::float_t","GPS_Time<(double)>", 2, argv[1] ));
6105
+ }
6106
+ temp2 = static_cast< GPS_Time< double >::float_t >(val2);
6107
+ arg2 = &temp2;
6108
+ {
6109
+ try {
6110
+ result = (GPS_Time< double > *)new_GPS_Time_Sl_double_Sg___SWIG_4((int const &)*arg1,(double const &)*arg2,arg3);
6111
+ DATA_PTR(self) = result;
6112
+ } catch (const native_exception &e) {
6113
+ e.regenerate();
6114
+ SWIG_fail;
6115
+ } catch (const std::exception& e) {
6116
+ SWIG_exception_fail(SWIG_RuntimeError, e.what());
6117
+ }
6118
+ }
6119
+ return self;
6120
+ fail:
6121
+ return Qnil;
6122
+ }
6123
+
6124
+
6125
+ SWIGINTERN VALUE _wrap_new_Time(int nargs, VALUE *args, VALUE self) {
6126
+ int argc;
6127
+ VALUE argv[2];
6128
+ int ii;
6129
+
6130
+ argc = nargs;
6131
+ if (argc > 2) SWIG_fail;
6132
+ for (ii = 0; (ii < argc); ++ii) {
6133
+ argv[ii] = args[ii];
6134
+ }
6135
+ if (argc == 0) {
6136
+ return _wrap_new_Time__SWIG_0(nargs, args, self);
6137
+ }
6138
+ if (argc == 1) {
6139
+ int _v;
6140
+ void *vptr = 0;
6141
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_TimeT_double_t, SWIG_POINTER_NO_NULL);
6142
+ _v = SWIG_CheckState(res);
6143
+ if (_v) {
6144
+ return _wrap_new_Time__SWIG_1(nargs, args, self);
6145
+ }
6146
+ }
6147
+ if (argc == 1) {
6148
+ int _v;
6149
+ {
6150
+ _v = (TYPE(argv[0]) == T_ARRAY) ? 1 : 0;
6151
+ }
6152
+ if (_v) {
6153
+ return _wrap_new_Time__SWIG_3(nargs, args, self);
6154
+ }
6155
+ }
6156
+ if (argc == 2) {
6157
+ int _v;
6158
+ {
6159
+ _v = (TYPE(argv[0]) == T_ARRAY) ? 1 : 0;
6160
+ }
6161
+ if (_v) {
6162
+ {
6163
+ int res = SWIG_AsVal_double(argv[1], NULL);
6164
+ _v = SWIG_CheckState(res);
6165
+ }
6166
+ if (_v) {
6167
+ return _wrap_new_Time__SWIG_2(nargs, args, self);
6168
+ }
6169
+ }
6170
+ }
6171
+ if (argc == 2) {
6172
+ int _v;
6173
+ {
6174
+ int res = SWIG_AsVal_int(argv[0], NULL);
6175
+ _v = SWIG_CheckState(res);
6176
+ }
6177
+ if (_v) {
6178
+ {
6179
+ int res = SWIG_AsVal_double(argv[1], NULL);
6180
+ _v = SWIG_CheckState(res);
6181
+ }
6182
+ if (_v) {
6183
+ return _wrap_new_Time__SWIG_4(nargs, args, self);
6184
+ }
6185
+ }
6186
+ }
6187
+
6188
+ fail:
6189
+ Ruby_Format_OverloadedError( argc, 2, "Time.new",
6190
+ " Time.new()\n"
6191
+ " Time.new(GPS_Time< double > const &t)\n"
6192
+ " Time.new(std::tm const &t, GPS_Time< double >::float_t const &leap_seconds)\n"
6193
+ " Time.new(std::tm const &t)\n"
6194
+ " Time.new(int const &week_, GPS_Time< double >::float_t const &seconds_, void *dummy)\n");
6195
+
6196
+ return Qnil;
6197
+ }
6198
+
6199
+
6200
+ /*
6201
+ Document-method: GPS_PVT::GPS::Time.to_a
6202
+
6203
+ call-seq:
6204
+ to_a
6205
+
6206
+ Convert Time to an Array.
6207
+ */
6208
+ SWIGINTERN VALUE
6209
+ _wrap_Time_to_a(int argc, VALUE *argv, VALUE self) {
6210
+ GPS_Time< double > *arg1 = (GPS_Time< double > *) 0 ;
6211
+ int *arg2 = (int *) 0 ;
6212
+ double *arg3 = (double *) 0 ;
6213
+ void *argp1 = 0 ;
6214
+ int res1 = 0 ;
6062
6215
  int temp2 ;
6063
6216
  int res2 = SWIG_TMPOBJ ;
6064
6217
  double temp3 ;
@@ -6104,6 +6257,58 @@ fail:
6104
6257
  }
6105
6258
 
6106
6259
 
6260
+ /*
6261
+ Document-method: GPS_PVT::GPS::Time.<=>
6262
+
6263
+ call-seq:
6264
+ <=>(t) -> int
6265
+
6266
+ Comparison operator. Returns < 0 for less than, 0 for equal or > 1 for higher than..
6267
+ */
6268
+ SWIGINTERN VALUE
6269
+ _wrap_Time___cmp__(int argc, VALUE *argv, VALUE self) {
6270
+ GPS_Time< double > *arg1 = (GPS_Time< double > *) 0 ;
6271
+ GPS_Time< double > *arg2 = 0 ;
6272
+ void *argp1 = 0 ;
6273
+ int res1 = 0 ;
6274
+ void *argp2 ;
6275
+ int res2 = 0 ;
6276
+ int result;
6277
+ VALUE vresult = Qnil;
6278
+
6279
+ if ((argc < 1) || (argc > 1)) {
6280
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
6281
+ }
6282
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_TimeT_double_t, 0 | 0 );
6283
+ if (!SWIG_IsOK(res1)) {
6284
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_Time< double > const *","__cmp__", 1, self ));
6285
+ }
6286
+ arg1 = reinterpret_cast< GPS_Time< double > * >(argp1);
6287
+ res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_GPS_TimeT_double_t, 0 );
6288
+ if (!SWIG_IsOK(res2)) {
6289
+ SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "GPS_Time< double > const &","__cmp__", 2, argv[0] ));
6290
+ }
6291
+ if (!argp2) {
6292
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_Time< double > const &","__cmp__", 2, argv[0]));
6293
+ }
6294
+ arg2 = reinterpret_cast< GPS_Time< double > * >(argp2);
6295
+ {
6296
+ try {
6297
+ result = (int)GPS_Time_Sl_double_Sg____cmp__((GPS_Time< double > const *)arg1,(GPS_Time< double > const &)*arg2);
6298
+ } catch (const native_exception &e) {
6299
+ e.regenerate();
6300
+ SWIG_fail;
6301
+ } catch (const std::exception& e) {
6302
+ SWIG_exception_fail(SWIG_RuntimeError, e.what());
6303
+ }
6304
+ }
6305
+ vresult = SWIG_From_int(static_cast< int >(result));
6306
+ return vresult;
6307
+ fail:
6308
+ return Qnil;
6309
+ }
6310
+
6311
+
6107
6312
  SWIGINTERN void
6108
6313
  free_GPS_Time_Sl_double_Sg_(void *self) {
6109
6314
  GPS_Time< double > *arg1 = (GPS_Time< double > *)self;
@@ -6322,6 +6527,50 @@ _wrap_SpaceNode_gamma_L1_L2_get(VALUE self) {
6322
6527
  }
6323
6528
 
6324
6529
 
6530
+ /*
6531
+ Document-method: GPS_PVT::GPS::SpaceNode.gamma_per_L1
6532
+
6533
+ call-seq:
6534
+ gamma_per_L1(GPS_SpaceNode< double >::float_t const & freq) -> GPS_SpaceNode< double >::float_t const
6535
+
6536
+ A class method.
6537
+
6538
+ */
6539
+ SWIGINTERN VALUE
6540
+ _wrap_SpaceNode_gamma_per_L1(int argc, VALUE *argv, VALUE self) {
6541
+ GPS_SpaceNode< double >::float_t *arg1 = 0 ;
6542
+ GPS_SpaceNode< double >::float_t temp1 ;
6543
+ double val1 ;
6544
+ int ecode1 = 0 ;
6545
+ GPS_SpaceNode< double >::float_t result;
6546
+ VALUE vresult = Qnil;
6547
+
6548
+ if ((argc < 1) || (argc > 1)) {
6549
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
6550
+ }
6551
+ ecode1 = SWIG_AsVal_double(argv[0], &val1);
6552
+ if (!SWIG_IsOK(ecode1)) {
6553
+ SWIG_exception_fail(SWIG_ArgError(ecode1), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::float_t","GPS_SpaceNode<(double)>::gamma_per_L1", 1, argv[0] ));
6554
+ }
6555
+ temp1 = static_cast< GPS_SpaceNode< double >::float_t >(val1);
6556
+ arg1 = &temp1;
6557
+ {
6558
+ try {
6559
+ result = (GPS_SpaceNode< double >::float_t)GPS_SpaceNode< double >::SWIGTEMPLATEDISAMBIGUATOR gamma_per_L1((double const &)*arg1);
6560
+ } catch (const native_exception &e) {
6561
+ e.regenerate();
6562
+ SWIG_fail;
6563
+ } catch (const std::exception& e) {
6564
+ SWIG_exception_fail(SWIG_RuntimeError, e.what());
6565
+ }
6566
+ }
6567
+ vresult = SWIG_From_double(static_cast< double >(result));
6568
+ return vresult;
6569
+ fail:
6570
+ return Qnil;
6571
+ }
6572
+
6573
+
6325
6574
  SWIGINTERN VALUE
6326
6575
  #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
6327
6576
  _wrap_SpaceNode_allocate(VALUE self)
@@ -7747,50 +7996,42 @@ fail:
7747
7996
  tropo_correction(ENU relative_pos, LLH usrllh) -> GPS_SpaceNode< double >::float_t
7748
7997
  tropo_correction(XYZ sat, XYZ usr) -> GPS_SpaceNode< double >::float_t
7749
7998
 
7750
- An instance method.
7999
+ A class method.
7751
8000
 
7752
8001
  */
7753
8002
  SWIGINTERN VALUE
7754
8003
  _wrap_SpaceNode_tropo_correction__SWIG_0(int argc, VALUE *argv, VALUE self) {
7755
- GPS_SpaceNode< double > *arg1 = (GPS_SpaceNode< double > *) 0 ;
7756
- GPS_SpaceNode< double >::enu_t *arg2 = 0 ;
7757
- GPS_SpaceNode< double >::llh_t *arg3 = 0 ;
7758
- void *argp1 = 0 ;
8004
+ GPS_SpaceNode< double >::enu_t *arg1 = 0 ;
8005
+ GPS_SpaceNode< double >::llh_t *arg2 = 0 ;
8006
+ void *argp1 ;
7759
8007
  int res1 = 0 ;
7760
8008
  void *argp2 ;
7761
8009
  int res2 = 0 ;
7762
- void *argp3 ;
7763
- int res3 = 0 ;
7764
8010
  GPS_SpaceNode< double >::float_t result;
7765
8011
  VALUE vresult = Qnil;
7766
8012
 
7767
8013
  if ((argc < 2) || (argc > 2)) {
7768
8014
  rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
7769
8015
  }
7770
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SpaceNodeT_double_t, 0 | 0 );
8016
+ res1 = SWIG_ConvertPtr(argv[0], &argp1, SWIGTYPE_p_System_ENUT_double_WGS84_t, 0 );
7771
8017
  if (!SWIG_IsOK(res1)) {
7772
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SpaceNode< double > const *","tropo_correction", 1, self ));
8018
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::enu_t const &","GPS_SpaceNode<(double)>::tropo_correction", 1, argv[0] ));
7773
8019
  }
7774
- arg1 = reinterpret_cast< GPS_SpaceNode< double > * >(argp1);
7775
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_System_ENUT_double_WGS84_t, 0 );
7776
- if (!SWIG_IsOK(res2)) {
7777
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::enu_t const &","tropo_correction", 2, argv[0] ));
8020
+ if (!argp1) {
8021
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::enu_t const &","GPS_SpaceNode<(double)>::tropo_correction", 1, argv[0]));
7778
8022
  }
7779
- if (!argp2) {
7780
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::enu_t const &","tropo_correction", 2, argv[0]));
7781
- }
7782
- arg2 = reinterpret_cast< GPS_SpaceNode< double >::enu_t * >(argp2);
7783
- res3 = SWIG_ConvertPtr(argv[1], &argp3, SWIGTYPE_p_System_LLHT_double_WGS84_t, 0 );
7784
- if (!SWIG_IsOK(res3)) {
7785
- SWIG_exception_fail(SWIG_ArgError(res3), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::llh_t const &","tropo_correction", 3, argv[1] ));
8023
+ arg1 = reinterpret_cast< GPS_SpaceNode< double >::enu_t * >(argp1);
8024
+ res2 = SWIG_ConvertPtr(argv[1], &argp2, SWIGTYPE_p_System_LLHT_double_WGS84_t, 0 );
8025
+ if (!SWIG_IsOK(res2)) {
8026
+ SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::llh_t const &","GPS_SpaceNode<(double)>::tropo_correction", 2, argv[1] ));
7786
8027
  }
7787
- if (!argp3) {
7788
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::llh_t const &","tropo_correction", 3, argv[1]));
8028
+ if (!argp2) {
8029
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::llh_t const &","GPS_SpaceNode<(double)>::tropo_correction", 2, argv[1]));
7789
8030
  }
7790
- arg3 = reinterpret_cast< GPS_SpaceNode< double >::llh_t * >(argp3);
8031
+ arg2 = reinterpret_cast< GPS_SpaceNode< double >::llh_t * >(argp2);
7791
8032
  {
7792
8033
  try {
7793
- result = (GPS_SpaceNode< double >::float_t)((GPS_SpaceNode< double > const *)arg1)->tropo_correction((GPS_SpaceNode< double >::enu_t const &)*arg2,(GPS_SpaceNode< double >::llh_t const &)*arg3);
8034
+ result = (GPS_SpaceNode< double >::float_t)GPS_SpaceNode< double >::SWIGTEMPLATEDISAMBIGUATOR tropo_correction((System_ENU< double,WGS84 > const &)*arg1,(System_LLH< double,WGS84 > const &)*arg2);
7794
8035
  } catch (const native_exception &e) {
7795
8036
  e.regenerate();
7796
8037
  SWIG_fail;
@@ -7877,50 +8118,42 @@ fail:
7877
8118
  tropo_correction(ENU relative_pos, LLH usrllh) -> GPS_SpaceNode< double >::float_t
7878
8119
  tropo_correction(XYZ sat, XYZ usr) -> GPS_SpaceNode< double >::float_t
7879
8120
 
7880
- An instance method.
8121
+ A class method.
7881
8122
 
7882
8123
  */
7883
8124
  SWIGINTERN VALUE
7884
8125
  _wrap_SpaceNode_tropo_correction__SWIG_1(int argc, VALUE *argv, VALUE self) {
7885
- GPS_SpaceNode< double > *arg1 = (GPS_SpaceNode< double > *) 0 ;
8126
+ GPS_SpaceNode< double >::xyz_t *arg1 = 0 ;
7886
8127
  GPS_SpaceNode< double >::xyz_t *arg2 = 0 ;
7887
- GPS_SpaceNode< double >::xyz_t *arg3 = 0 ;
7888
- void *argp1 = 0 ;
8128
+ void *argp1 ;
7889
8129
  int res1 = 0 ;
7890
8130
  void *argp2 ;
7891
8131
  int res2 = 0 ;
7892
- void *argp3 ;
7893
- int res3 = 0 ;
7894
8132
  GPS_SpaceNode< double >::float_t result;
7895
8133
  VALUE vresult = Qnil;
7896
8134
 
7897
8135
  if ((argc < 2) || (argc > 2)) {
7898
8136
  rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
7899
8137
  }
7900
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SpaceNodeT_double_t, 0 | 0 );
8138
+ res1 = SWIG_ConvertPtr(argv[0], &argp1, SWIGTYPE_p_System_XYZT_double_WGS84_t, 0 );
7901
8139
  if (!SWIG_IsOK(res1)) {
7902
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SpaceNode< double > const *","tropo_correction", 1, self ));
8140
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::xyz_t const &","GPS_SpaceNode<(double)>::tropo_correction", 1, argv[0] ));
7903
8141
  }
7904
- arg1 = reinterpret_cast< GPS_SpaceNode< double > * >(argp1);
7905
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_System_XYZT_double_WGS84_t, 0 );
8142
+ if (!argp1) {
8143
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::xyz_t const &","GPS_SpaceNode<(double)>::tropo_correction", 1, argv[0]));
8144
+ }
8145
+ arg1 = reinterpret_cast< GPS_SpaceNode< double >::xyz_t * >(argp1);
8146
+ res2 = SWIG_ConvertPtr(argv[1], &argp2, SWIGTYPE_p_System_XYZT_double_WGS84_t, 0 );
7906
8147
  if (!SWIG_IsOK(res2)) {
7907
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::xyz_t const &","tropo_correction", 2, argv[0] ));
8148
+ SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::xyz_t const &","GPS_SpaceNode<(double)>::tropo_correction", 2, argv[1] ));
7908
8149
  }
7909
8150
  if (!argp2) {
7910
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::xyz_t const &","tropo_correction", 2, argv[0]));
8151
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::xyz_t const &","GPS_SpaceNode<(double)>::tropo_correction", 2, argv[1]));
7911
8152
  }
7912
8153
  arg2 = reinterpret_cast< GPS_SpaceNode< double >::xyz_t * >(argp2);
7913
- res3 = SWIG_ConvertPtr(argv[1], &argp3, SWIGTYPE_p_System_XYZT_double_WGS84_t, 0 );
7914
- if (!SWIG_IsOK(res3)) {
7915
- SWIG_exception_fail(SWIG_ArgError(res3), Ruby_Format_TypeError( "", "GPS_SpaceNode< double >::xyz_t const &","tropo_correction", 3, argv[1] ));
7916
- }
7917
- if (!argp3) {
7918
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "GPS_SpaceNode< double >::xyz_t const &","tropo_correction", 3, argv[1]));
7919
- }
7920
- arg3 = reinterpret_cast< GPS_SpaceNode< double >::xyz_t * >(argp3);
7921
8154
  {
7922
8155
  try {
7923
- result = (GPS_SpaceNode< double >::float_t)((GPS_SpaceNode< double > const *)arg1)->tropo_correction((GPS_SpaceNode< double >::xyz_t const &)*arg2,(GPS_SpaceNode< double >::xyz_t const &)*arg3);
8156
+ result = (GPS_SpaceNode< double >::float_t)GPS_SpaceNode< double >::SWIGTEMPLATEDISAMBIGUATOR tropo_correction((System_XYZ< double,WGS84 > const &)*arg1,(System_XYZ< double,WGS84 > const &)*arg2);
7924
8157
  } catch (const native_exception &e) {
7925
8158
  e.regenerate();
7926
8159
  SWIG_fail;
@@ -7937,56 +8170,45 @@ fail:
7937
8170
 
7938
8171
  SWIGINTERN VALUE _wrap_SpaceNode_tropo_correction(int nargs, VALUE *args, VALUE self) {
7939
8172
  int argc;
7940
- VALUE argv[4];
8173
+ VALUE argv[2];
7941
8174
  int ii;
7942
8175
 
7943
- argc = nargs + 1;
7944
- argv[0] = self;
7945
- if (argc > 4) SWIG_fail;
7946
- for (ii = 1; (ii < argc); ++ii) {
7947
- argv[ii] = args[ii-1];
8176
+ argc = nargs;
8177
+ if (argc > 2) SWIG_fail;
8178
+ for (ii = 0; (ii < argc); ++ii) {
8179
+ argv[ii] = args[ii];
7948
8180
  }
7949
- if (argc == 3) {
8181
+ if (argc == 2) {
7950
8182
  int _v;
7951
8183
  void *vptr = 0;
7952
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_SpaceNodeT_double_t, 0);
8184
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_System_ENUT_double_WGS84_t, SWIG_POINTER_NO_NULL);
7953
8185
  _v = SWIG_CheckState(res);
7954
8186
  if (_v) {
7955
8187
  void *vptr = 0;
7956
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_System_ENUT_double_WGS84_t, SWIG_POINTER_NO_NULL);
8188
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_System_LLHT_double_WGS84_t, SWIG_POINTER_NO_NULL);
7957
8189
  _v = SWIG_CheckState(res);
7958
8190
  if (_v) {
7959
- void *vptr = 0;
7960
- int res = SWIG_ConvertPtr(argv[2], &vptr, SWIGTYPE_p_System_LLHT_double_WGS84_t, SWIG_POINTER_NO_NULL);
7961
- _v = SWIG_CheckState(res);
7962
- if (_v) {
7963
- return _wrap_SpaceNode_tropo_correction__SWIG_0(nargs, args, self);
7964
- }
8191
+ return _wrap_SpaceNode_tropo_correction__SWIG_0(nargs, args, self);
7965
8192
  }
7966
8193
  }
7967
8194
  }
7968
- if (argc == 3) {
8195
+ if (argc == 2) {
7969
8196
  int _v;
7970
8197
  void *vptr = 0;
7971
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_SpaceNodeT_double_t, 0);
8198
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_System_XYZT_double_WGS84_t, SWIG_POINTER_NO_NULL);
7972
8199
  _v = SWIG_CheckState(res);
7973
8200
  if (_v) {
7974
8201
  void *vptr = 0;
7975
8202
  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_System_XYZT_double_WGS84_t, SWIG_POINTER_NO_NULL);
7976
8203
  _v = SWIG_CheckState(res);
7977
8204
  if (_v) {
7978
- void *vptr = 0;
7979
- int res = SWIG_ConvertPtr(argv[2], &vptr, SWIGTYPE_p_System_XYZT_double_WGS84_t, SWIG_POINTER_NO_NULL);
7980
- _v = SWIG_CheckState(res);
7981
- if (_v) {
7982
- return _wrap_SpaceNode_tropo_correction__SWIG_1(nargs, args, self);
7983
- }
8205
+ return _wrap_SpaceNode_tropo_correction__SWIG_1(nargs, args, self);
7984
8206
  }
7985
8207
  }
7986
8208
  }
7987
8209
 
7988
8210
  fail:
7989
- Ruby_Format_OverloadedError( argc, 4, "SpaceNode.tropo_correction",
8211
+ Ruby_Format_OverloadedError( argc, 2, "SpaceNode.tropo_correction",
7990
8212
  " GPS_SpaceNode< double >::float_t SpaceNode.tropo_correction(GPS_SpaceNode< double >::enu_t const &relative_pos, GPS_SpaceNode< double >::llh_t const &usrllh)\n"
7991
8213
  " GPS_SpaceNode< double >::float_t SpaceNode.tropo_correction(GPS_SpaceNode< double >::xyz_t const &sat, GPS_SpaceNode< double >::xyz_t const &usr)\n");
7992
8214
 
@@ -14223,6 +14445,15 @@ A class method.
14223
14445
 
14224
14446
  A class method.
14225
14447
 
14448
+ */
14449
+ /*
14450
+ Document-method: GPS_PVT::GPS.L1_FREQUENCY
14451
+
14452
+ call-seq:
14453
+ L1_FREQUENCY -> int
14454
+
14455
+ A class method.
14456
+
14226
14457
  */
14227
14458
  /*
14228
14459
  Document-method: GPS_PVT::GPS.ITEMS_PREDEFINED
@@ -14481,363 +14712,69 @@ SWIGINTERN VALUE _wrap_new_Measurement(int nargs, VALUE *args, VALUE self) {
14481
14712
  return _wrap_new_Measurement__SWIG_0(nargs, args, self);
14482
14713
  }
14483
14714
  if (argc == 1) {
14484
- int _v;
14485
- {
14486
- _v = SWIG_CheckState(SWIG_ConvertPtr(argv[0], (void **)0, SWIGTYPE_p_GPS_MeasurementT_double_t, 0))
14487
- || swig::check<GPS_Measurement<double> >(argv[0]);
14488
- }
14489
- if (_v) {
14490
- return _wrap_new_Measurement__SWIG_1(nargs, args, self);
14491
- }
14492
- }
14493
-
14494
- fail:
14495
- Ruby_Format_OverloadedError( argc, 1, "Measurement.new",
14496
- " Measurement.new()\n"
14497
- " Measurement.new(GPS_Measurement< double > const &other)\n");
14498
-
14499
- return Qnil;
14500
- }
14501
-
14502
-
14503
- SWIGINTERN void
14504
- free_GPS_Measurement_Sl_double_Sg_(void *self) {
14505
- GPS_Measurement< double > *arg1 = (GPS_Measurement< double > *)self;
14506
- delete arg1;
14507
- }
14508
-
14509
- /*
14510
- Document-class: GPS_PVT::GPS::SolverOptionsCommon
14511
-
14512
- Proxy of C++ GPS_PVT::GPS::SolverOptionsCommon class
14513
-
14514
-
14515
- */
14516
- static swig_class SwigClassSolverOptionsCommon;
14517
-
14518
- /*
14519
- Document-method: GPS_PVT::GPS.IONOSPHERIC_KLOBUCHAR
14520
-
14521
- call-seq:
14522
- IONOSPHERIC_KLOBUCHAR -> int
14523
-
14524
- A class method.
14525
-
14526
- */
14527
- /*
14528
- Document-method: GPS_PVT::GPS.IONOSPHERIC_SBAS
14529
-
14530
- call-seq:
14531
- IONOSPHERIC_SBAS -> int
14532
-
14533
- A class method.
14534
-
14535
- */
14536
- /*
14537
- Document-method: GPS_PVT::GPS.IONOSPHERIC_NTCM_GL
14538
-
14539
- call-seq:
14540
- IONOSPHERIC_NTCM_GL -> int
14541
-
14542
- A class method.
14543
-
14544
- */
14545
- /*
14546
- Document-method: GPS_PVT::GPS.IONOSPHERIC_NONE
14547
-
14548
- call-seq:
14549
- IONOSPHERIC_NONE -> int
14550
-
14551
- A class method.
14552
-
14553
- */
14554
- /*
14555
- Document-method: GPS_PVT::GPS.IONOSPHERIC_MODELS
14556
-
14557
- call-seq:
14558
- IONOSPHERIC_MODELS -> int
14559
-
14560
- A class method.
14561
-
14562
- */
14563
- /*
14564
- Document-method: GPS_PVT::GPS.IONOSPHERIC_SKIP
14565
-
14566
- call-seq:
14567
- IONOSPHERIC_SKIP -> int
14568
-
14569
- A class method.
14570
-
14571
- */
14572
- /*
14573
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.cast_general
14574
-
14575
- call-seq:
14576
- cast_general -> GPS_Solver_GeneralOptions< double > *
14577
- cast_general -> GPS_Solver_GeneralOptions< double > const
14578
-
14579
- An instance method.
14580
-
14581
- */
14582
- SWIGINTERN VALUE
14583
- _wrap_SolverOptionsCommon_cast_general__SWIG_0(int argc, VALUE *argv, VALUE self) {
14584
- GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14585
- void *argp1 = 0 ;
14586
- int res1 = 0 ;
14587
- GPS_Solver_GeneralOptions< double > *result = 0 ;
14588
- VALUE vresult = Qnil;
14589
-
14590
- if ((argc < 0) || (argc > 0)) {
14591
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
14592
- }
14593
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14594
- if (!SWIG_IsOK(res1)) {
14595
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","cast_general", 1, self ));
14596
- }
14597
- arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14598
- {
14599
- try {
14600
- result = (GPS_Solver_GeneralOptions< double > *)(arg1)->cast_general();
14601
- } catch (const native_exception &e) {
14602
- e.regenerate();
14603
- SWIG_fail;
14604
- } catch (const std::exception& e) {
14605
- SWIG_exception_fail(SWIG_RuntimeError, e.what());
14606
- }
14607
- }
14608
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_GPS_Solver_GeneralOptionsT_double_t, 0 | 0 );
14609
- return vresult;
14610
- fail:
14611
- return Qnil;
14612
- }
14613
-
14614
-
14615
- SWIGINTERN VALUE
14616
- _wrap_SolverOptionsCommon_cast_general__SWIG_1(int argc, VALUE *argv, VALUE self) {
14617
- GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14618
- void *argp1 = 0 ;
14619
- int res1 = 0 ;
14620
- GPS_Solver_GeneralOptions< double > *result = 0 ;
14621
- VALUE vresult = Qnil;
14622
-
14623
- if ((argc < 0) || (argc > 0)) {
14624
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
14625
- }
14626
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14627
- if (!SWIG_IsOK(res1)) {
14628
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","cast_general", 1, self ));
14629
- }
14630
- arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14631
- {
14632
- try {
14633
- result = (GPS_Solver_GeneralOptions< double > *)((GPS_SolverOptions_Common< double > const *)arg1)->cast_general();
14634
- } catch (const native_exception &e) {
14635
- e.regenerate();
14636
- SWIG_fail;
14637
- } catch (const std::exception& e) {
14638
- SWIG_exception_fail(SWIG_RuntimeError, e.what());
14639
- }
14640
- }
14641
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_GPS_Solver_GeneralOptionsT_double_t, 0 | 0 );
14642
- return vresult;
14643
- fail:
14644
- return Qnil;
14645
- }
14646
-
14647
-
14648
- SWIGINTERN VALUE _wrap_SolverOptionsCommon_cast_general(int nargs, VALUE *args, VALUE self) {
14649
- int argc;
14650
- VALUE argv[2];
14651
- int ii;
14652
-
14653
- argc = nargs + 1;
14654
- argv[0] = self;
14655
- if (argc > 2) SWIG_fail;
14656
- for (ii = 1; (ii < argc); ++ii) {
14657
- argv[ii] = args[ii-1];
14658
- }
14659
- if (argc == 1) {
14660
- int _v;
14661
- void *vptr = 0;
14662
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0);
14663
- _v = SWIG_CheckState(res);
14664
- if (_v) {
14665
- return _wrap_SolverOptionsCommon_cast_general__SWIG_0(nargs, args, self);
14666
- }
14667
- }
14668
- if (argc == 1) {
14669
- int _v;
14670
- void *vptr = 0;
14671
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0);
14672
- _v = SWIG_CheckState(res);
14673
- if (_v) {
14674
- return _wrap_SolverOptionsCommon_cast_general__SWIG_1(nargs, args, self);
14675
- }
14676
- }
14677
-
14678
- fail:
14679
- Ruby_Format_OverloadedError( argc, 2, "SolverOptionsCommon.cast_general",
14680
- " GPS_Solver_GeneralOptions< double > SolverOptionsCommon.cast_general()\n"
14681
- " GPS_Solver_GeneralOptions< double > const * SolverOptionsCommon.cast_general()\n");
14682
-
14683
- return Qnil;
14684
- }
14685
-
14686
-
14687
- /*
14688
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.ionospheric_models
14689
-
14690
- call-seq:
14691
- ionospheric_models -> std::vector< int >
14692
-
14693
- An instance method.
14694
-
14695
- */
14696
- SWIGINTERN VALUE
14697
- _wrap_SolverOptionsCommon_ionospheric_models(int argc, VALUE *argv, VALUE self) {
14698
- GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14699
- void *argp1 = 0 ;
14700
- int res1 = 0 ;
14701
- std::vector< int > result;
14702
- VALUE vresult = Qnil;
14703
-
14704
- if ((argc < 0) || (argc > 0)) {
14705
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
14706
- }
14707
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14708
- if (!SWIG_IsOK(res1)) {
14709
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","get_ionospheric_models", 1, self ));
14710
- }
14711
- arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14712
- {
14713
- try {
14714
- result = ((GPS_SolverOptions_Common< double > const *)arg1)->get_ionospheric_models();
14715
- } catch (const native_exception &e) {
14716
- e.regenerate();
14717
- SWIG_fail;
14718
- } catch (const std::exception& e) {
14719
- SWIG_exception_fail(SWIG_RuntimeError, e.what());
14720
- }
14721
- }
14722
- {
14723
- vresult = rb_ary_new();
14724
-
14725
- for(std::vector< int >::const_iterator it((&result)->begin()), it_end((&result)->end());
14726
- it != it_end; ++it){
14727
- vresult = SWIG_Ruby_AppendOutput(vresult, SWIG_From_int (*it));
14728
- }
14729
- }
14730
- return vresult;
14731
- fail:
14732
- return Qnil;
14733
- }
14734
-
14735
-
14736
- /*
14737
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.ionospheric_models=
14738
-
14739
- call-seq:
14740
- ionospheric_models=(std::vector< int > const & models) -> std::vector< int >
14741
-
14742
- An instance method.
14743
-
14744
- */
14745
- SWIGINTERN VALUE
14746
- _wrap_SolverOptionsCommon_ionospheric_modelse___(int argc, VALUE *argv, VALUE self) {
14747
- GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14748
- std::vector< int > *arg2 = 0 ;
14749
- void *argp1 = 0 ;
14750
- int res1 = 0 ;
14751
- std::vector< int > temp2 ;
14752
- std::vector< int > result;
14753
- VALUE vresult = Qnil;
14754
-
14755
- if ((argc < 1) || (argc > 1)) {
14756
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
14757
- }
14758
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14759
- if (!SWIG_IsOK(res1)) {
14760
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","set_ionospheric_models", 1, self ));
14761
- }
14762
- arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14763
- {
14764
- arg2 = &temp2;
14765
-
14766
- if(RB_TYPE_P(argv[0], T_ARRAY)){
14767
- for(int i(0), i_max(RARRAY_LEN(argv[0])); i < i_max; ++i){
14768
- VALUE obj(RARRAY_AREF(argv[0], i));
14769
- int v;
14770
- if(SWIG_IsOK(SWIG_AsVal_int (obj, &v))){
14771
- temp2.push_back(v);
14772
- }else{
14773
- SWIG_exception(SWIG_TypeError, "std::vector< int > is expected");
14774
- }
14775
- }
14776
- }
14777
-
14778
- }
14779
- {
14780
- try {
14781
- result = (arg1)->set_ionospheric_models((std::vector< int > const &)*arg2);
14782
- } catch (const native_exception &e) {
14783
- e.regenerate();
14784
- SWIG_fail;
14785
- } catch (const std::exception& e) {
14786
- SWIG_exception_fail(SWIG_RuntimeError, e.what());
14787
- }
14788
- }
14789
- {
14790
- vresult = rb_ary_new();
14791
-
14792
- for(std::vector< int >::const_iterator it((&result)->begin()), it_end((&result)->end());
14793
- it != it_end; ++it){
14794
- vresult = SWIG_Ruby_AppendOutput(vresult, SWIG_From_int (*it));
14715
+ int _v;
14716
+ {
14717
+ _v = SWIG_CheckState(SWIG_ConvertPtr(argv[0], (void **)0, SWIGTYPE_p_GPS_MeasurementT_double_t, 0))
14718
+ || swig::check<GPS_Measurement<double> >(argv[0]);
14719
+ }
14720
+ if (_v) {
14721
+ return _wrap_new_Measurement__SWIG_1(nargs, args, self);
14795
14722
  }
14796
14723
  }
14797
- return vresult;
14724
+
14798
14725
  fail:
14726
+ Ruby_Format_OverloadedError( argc, 1, "Measurement.new",
14727
+ " Measurement.new()\n"
14728
+ " Measurement.new(GPS_Measurement< double > const &other)\n");
14729
+
14799
14730
  return Qnil;
14800
14731
  }
14801
14732
 
14802
14733
 
14734
+ SWIGINTERN void
14735
+ free_GPS_Measurement_Sl_double_Sg_(void *self) {
14736
+ GPS_Measurement< double > *arg1 = (GPS_Measurement< double > *)self;
14737
+ delete arg1;
14738
+ }
14739
+
14740
+ /*
14741
+ Document-class: GPS_PVT::GPS::SolverOptionsCommon
14742
+
14743
+ Proxy of C++ GPS_PVT::GPS::SolverOptionsCommon class
14744
+
14745
+
14746
+ */
14747
+ static swig_class SwigClassSolverOptionsCommon;
14748
+
14803
14749
  /*
14804
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.elevation_mask=
14750
+ Document-method: GPS_PVT::GPS::SolverOptionsCommon.cast_general
14805
14751
 
14806
14752
  call-seq:
14807
- elevation_mask=(double const & v) -> double
14753
+ cast_general -> GPS_Solver_GeneralOptions< double > *
14754
+ cast_general -> GPS_Solver_GeneralOptions< double > const
14808
14755
 
14809
14756
  An instance method.
14810
14757
 
14811
14758
  */
14812
14759
  SWIGINTERN VALUE
14813
- _wrap_SolverOptionsCommon_elevation_maske___(int argc, VALUE *argv, VALUE self) {
14760
+ _wrap_SolverOptionsCommon_cast_general__SWIG_0(int argc, VALUE *argv, VALUE self) {
14814
14761
  GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14815
- double *arg2 = 0 ;
14816
14762
  void *argp1 = 0 ;
14817
14763
  int res1 = 0 ;
14818
- double temp2 ;
14819
- double val2 ;
14820
- int ecode2 = 0 ;
14821
- double result;
14764
+ GPS_Solver_GeneralOptions< double > *result = 0 ;
14822
14765
  VALUE vresult = Qnil;
14823
14766
 
14824
- if ((argc < 1) || (argc > 1)) {
14825
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
14767
+ if ((argc < 0) || (argc > 0)) {
14768
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
14826
14769
  }
14827
14770
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14828
14771
  if (!SWIG_IsOK(res1)) {
14829
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","set_elevation_mask", 1, self ));
14772
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","cast_general", 1, self ));
14830
14773
  }
14831
14774
  arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14832
- ecode2 = SWIG_AsVal_double(argv[0], &val2);
14833
- if (!SWIG_IsOK(ecode2)) {
14834
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "double","set_elevation_mask", 2, argv[0] ));
14835
- }
14836
- temp2 = static_cast< double >(val2);
14837
- arg2 = &temp2;
14838
14775
  {
14839
14776
  try {
14840
- result = (double)GPS_SolverOptions_Common_Sl_double_Sg__set_elevation_mask(arg1,(double const &)*arg2);
14777
+ result = (GPS_Solver_GeneralOptions< double > *)(arg1)->cast_general();
14841
14778
  } catch (const native_exception &e) {
14842
14779
  e.regenerate();
14843
14780
  SWIG_fail;
@@ -14845,28 +14782,19 @@ _wrap_SolverOptionsCommon_elevation_maske___(int argc, VALUE *argv, VALUE self)
14845
14782
  SWIG_exception_fail(SWIG_RuntimeError, e.what());
14846
14783
  }
14847
14784
  }
14848
- vresult = SWIG_From_double(static_cast< double >(result));
14785
+ vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_GPS_Solver_GeneralOptionsT_double_t, 0 | 0 );
14849
14786
  return vresult;
14850
14787
  fail:
14851
14788
  return Qnil;
14852
14789
  }
14853
14790
 
14854
14791
 
14855
- /*
14856
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.elevation_mask
14857
-
14858
- call-seq:
14859
- elevation_mask -> double const &
14860
-
14861
- An instance method.
14862
-
14863
- */
14864
14792
  SWIGINTERN VALUE
14865
- _wrap_SolverOptionsCommon_elevation_mask(int argc, VALUE *argv, VALUE self) {
14793
+ _wrap_SolverOptionsCommon_cast_general__SWIG_1(int argc, VALUE *argv, VALUE self) {
14866
14794
  GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14867
14795
  void *argp1 = 0 ;
14868
14796
  int res1 = 0 ;
14869
- double *result = 0 ;
14797
+ GPS_Solver_GeneralOptions< double > *result = 0 ;
14870
14798
  VALUE vresult = Qnil;
14871
14799
 
14872
14800
  if ((argc < 0) || (argc > 0)) {
@@ -14874,12 +14802,12 @@ _wrap_SolverOptionsCommon_elevation_mask(int argc, VALUE *argv, VALUE self) {
14874
14802
  }
14875
14803
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14876
14804
  if (!SWIG_IsOK(res1)) {
14877
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","get_elevation_mask", 1, self ));
14805
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","cast_general", 1, self ));
14878
14806
  }
14879
14807
  arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14880
14808
  {
14881
14809
  try {
14882
- result = (double *) &GPS_SolverOptions_Common_Sl_double_Sg__get_elevation_mask((GPS_SolverOptions_Common< double > const *)arg1);
14810
+ result = (GPS_Solver_GeneralOptions< double > *)((GPS_SolverOptions_Common< double > const *)arg1)->cast_general();
14883
14811
  } catch (const native_exception &e) {
14884
14812
  e.regenerate();
14885
14813
  SWIG_fail;
@@ -14887,24 +14815,63 @@ _wrap_SolverOptionsCommon_elevation_mask(int argc, VALUE *argv, VALUE self) {
14887
14815
  SWIG_exception_fail(SWIG_RuntimeError, e.what());
14888
14816
  }
14889
14817
  }
14890
- vresult = SWIG_From_double(static_cast< double >(*result));
14818
+ vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_GPS_Solver_GeneralOptionsT_double_t, 0 | 0 );
14891
14819
  return vresult;
14892
14820
  fail:
14893
14821
  return Qnil;
14894
14822
  }
14895
14823
 
14896
14824
 
14825
+ SWIGINTERN VALUE _wrap_SolverOptionsCommon_cast_general(int nargs, VALUE *args, VALUE self) {
14826
+ int argc;
14827
+ VALUE argv[2];
14828
+ int ii;
14829
+
14830
+ argc = nargs + 1;
14831
+ argv[0] = self;
14832
+ if (argc > 2) SWIG_fail;
14833
+ for (ii = 1; (ii < argc); ++ii) {
14834
+ argv[ii] = args[ii-1];
14835
+ }
14836
+ if (argc == 1) {
14837
+ int _v;
14838
+ void *vptr = 0;
14839
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0);
14840
+ _v = SWIG_CheckState(res);
14841
+ if (_v) {
14842
+ return _wrap_SolverOptionsCommon_cast_general__SWIG_0(nargs, args, self);
14843
+ }
14844
+ }
14845
+ if (argc == 1) {
14846
+ int _v;
14847
+ void *vptr = 0;
14848
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0);
14849
+ _v = SWIG_CheckState(res);
14850
+ if (_v) {
14851
+ return _wrap_SolverOptionsCommon_cast_general__SWIG_1(nargs, args, self);
14852
+ }
14853
+ }
14854
+
14855
+ fail:
14856
+ Ruby_Format_OverloadedError( argc, 2, "SolverOptionsCommon.cast_general",
14857
+ " GPS_Solver_GeneralOptions< double > SolverOptionsCommon.cast_general()\n"
14858
+ " GPS_Solver_GeneralOptions< double > const * SolverOptionsCommon.cast_general()\n");
14859
+
14860
+ return Qnil;
14861
+ }
14862
+
14863
+
14897
14864
  /*
14898
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.residual_mask=
14865
+ Document-method: GPS_PVT::GPS::SolverOptionsCommon.elevation_mask=
14899
14866
 
14900
14867
  call-seq:
14901
- residual_mask=(double const & v) -> double
14868
+ elevation_mask=(double const & v) -> double
14902
14869
 
14903
14870
  An instance method.
14904
14871
 
14905
14872
  */
14906
14873
  SWIGINTERN VALUE
14907
- _wrap_SolverOptionsCommon_residual_maske___(int argc, VALUE *argv, VALUE self) {
14874
+ _wrap_SolverOptionsCommon_elevation_maske___(int argc, VALUE *argv, VALUE self) {
14908
14875
  GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14909
14876
  double *arg2 = 0 ;
14910
14877
  void *argp1 = 0 ;
@@ -14920,18 +14887,18 @@ _wrap_SolverOptionsCommon_residual_maske___(int argc, VALUE *argv, VALUE self) {
14920
14887
  }
14921
14888
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14922
14889
  if (!SWIG_IsOK(res1)) {
14923
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","set_residual_mask", 1, self ));
14890
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","set_elevation_mask", 1, self ));
14924
14891
  }
14925
14892
  arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14926
14893
  ecode2 = SWIG_AsVal_double(argv[0], &val2);
14927
14894
  if (!SWIG_IsOK(ecode2)) {
14928
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "double","set_residual_mask", 2, argv[0] ));
14895
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "double","set_elevation_mask", 2, argv[0] ));
14929
14896
  }
14930
14897
  temp2 = static_cast< double >(val2);
14931
14898
  arg2 = &temp2;
14932
14899
  {
14933
14900
  try {
14934
- result = (double)GPS_SolverOptions_Common_Sl_double_Sg__set_residual_mask(arg1,(double const &)*arg2);
14901
+ result = (double)GPS_SolverOptions_Common_Sl_double_Sg__set_elevation_mask(arg1,(double const &)*arg2);
14935
14902
  } catch (const native_exception &e) {
14936
14903
  e.regenerate();
14937
14904
  SWIG_fail;
@@ -14947,16 +14914,16 @@ fail:
14947
14914
 
14948
14915
 
14949
14916
  /*
14950
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.residual_mask
14917
+ Document-method: GPS_PVT::GPS::SolverOptionsCommon.elevation_mask
14951
14918
 
14952
14919
  call-seq:
14953
- residual_mask -> double const &
14920
+ elevation_mask -> double const &
14954
14921
 
14955
14922
  An instance method.
14956
14923
 
14957
14924
  */
14958
14925
  SWIGINTERN VALUE
14959
- _wrap_SolverOptionsCommon_residual_mask(int argc, VALUE *argv, VALUE self) {
14926
+ _wrap_SolverOptionsCommon_elevation_mask(int argc, VALUE *argv, VALUE self) {
14960
14927
  GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
14961
14928
  void *argp1 = 0 ;
14962
14929
  int res1 = 0 ;
@@ -14968,12 +14935,12 @@ _wrap_SolverOptionsCommon_residual_mask(int argc, VALUE *argv, VALUE self) {
14968
14935
  }
14969
14936
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
14970
14937
  if (!SWIG_IsOK(res1)) {
14971
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","get_residual_mask", 1, self ));
14938
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","get_elevation_mask", 1, self ));
14972
14939
  }
14973
14940
  arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
14974
14941
  {
14975
14942
  try {
14976
- result = (double *) &GPS_SolverOptions_Common_Sl_double_Sg__get_residual_mask((GPS_SolverOptions_Common< double > const *)arg1);
14943
+ result = (double *) &GPS_SolverOptions_Common_Sl_double_Sg__get_elevation_mask((GPS_SolverOptions_Common< double > const *)arg1);
14977
14944
  } catch (const native_exception &e) {
14978
14945
  e.regenerate();
14979
14946
  SWIG_fail;
@@ -14989,16 +14956,16 @@ fail:
14989
14956
 
14990
14957
 
14991
14958
  /*
14992
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.f_10_7=
14959
+ Document-method: GPS_PVT::GPS::SolverOptionsCommon.residual_mask=
14993
14960
 
14994
14961
  call-seq:
14995
- f_10_7=(double const & v) -> double
14962
+ residual_mask=(double const & v) -> double
14996
14963
 
14997
14964
  An instance method.
14998
14965
 
14999
14966
  */
15000
14967
  SWIGINTERN VALUE
15001
- _wrap_SolverOptionsCommon_f_10_7e___(int argc, VALUE *argv, VALUE self) {
14968
+ _wrap_SolverOptionsCommon_residual_maske___(int argc, VALUE *argv, VALUE self) {
15002
14969
  GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
15003
14970
  double *arg2 = 0 ;
15004
14971
  void *argp1 = 0 ;
@@ -15014,18 +14981,18 @@ _wrap_SolverOptionsCommon_f_10_7e___(int argc, VALUE *argv, VALUE self) {
15014
14981
  }
15015
14982
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
15016
14983
  if (!SWIG_IsOK(res1)) {
15017
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","set_f_10_7", 1, self ));
14984
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > *","set_residual_mask", 1, self ));
15018
14985
  }
15019
14986
  arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
15020
14987
  ecode2 = SWIG_AsVal_double(argv[0], &val2);
15021
14988
  if (!SWIG_IsOK(ecode2)) {
15022
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "double","set_f_10_7", 2, argv[0] ));
14989
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "double","set_residual_mask", 2, argv[0] ));
15023
14990
  }
15024
14991
  temp2 = static_cast< double >(val2);
15025
14992
  arg2 = &temp2;
15026
14993
  {
15027
14994
  try {
15028
- result = (double)GPS_SolverOptions_Common_Sl_double_Sg__set_f_10_7(arg1,(double const &)*arg2);
14995
+ result = (double)GPS_SolverOptions_Common_Sl_double_Sg__set_residual_mask(arg1,(double const &)*arg2);
15029
14996
  } catch (const native_exception &e) {
15030
14997
  e.regenerate();
15031
14998
  SWIG_fail;
@@ -15041,16 +15008,16 @@ fail:
15041
15008
 
15042
15009
 
15043
15010
  /*
15044
- Document-method: GPS_PVT::GPS::SolverOptionsCommon.f_10_7
15011
+ Document-method: GPS_PVT::GPS::SolverOptionsCommon.residual_mask
15045
15012
 
15046
15013
  call-seq:
15047
- f_10_7 -> double const &
15014
+ residual_mask -> double const &
15048
15015
 
15049
15016
  An instance method.
15050
15017
 
15051
15018
  */
15052
15019
  SWIGINTERN VALUE
15053
- _wrap_SolverOptionsCommon_f_10_7(int argc, VALUE *argv, VALUE self) {
15020
+ _wrap_SolverOptionsCommon_residual_mask(int argc, VALUE *argv, VALUE self) {
15054
15021
  GPS_SolverOptions_Common< double > *arg1 = (GPS_SolverOptions_Common< double > *) 0 ;
15055
15022
  void *argp1 = 0 ;
15056
15023
  int res1 = 0 ;
@@ -15062,12 +15029,12 @@ _wrap_SolverOptionsCommon_f_10_7(int argc, VALUE *argv, VALUE self) {
15062
15029
  }
15063
15030
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, 0 | 0 );
15064
15031
  if (!SWIG_IsOK(res1)) {
15065
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","get_f_10_7", 1, self ));
15032
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_SolverOptions_Common< double > const *","get_residual_mask", 1, self ));
15066
15033
  }
15067
15034
  arg1 = reinterpret_cast< GPS_SolverOptions_Common< double > * >(argp1);
15068
15035
  {
15069
15036
  try {
15070
- result = (double *) &GPS_SolverOptions_Common_Sl_double_Sg__get_f_10_7((GPS_SolverOptions_Common< double > const *)arg1);
15037
+ result = (double *) &GPS_SolverOptions_Common_Sl_double_Sg__get_residual_mask((GPS_SolverOptions_Common< double > const *)arg1);
15071
15038
  } catch (const native_exception &e) {
15072
15039
  e.regenerate();
15073
15040
  SWIG_fail;
@@ -15617,6 +15584,92 @@ fail:
15617
15584
  }
15618
15585
 
15619
15586
 
15587
+ /*
15588
+ Document-method: GPS_PVT::GPS::Solver.correction
15589
+
15590
+ call-seq:
15591
+ correction -> VALUE
15592
+
15593
+ An instance method.
15594
+
15595
+ */
15596
+ SWIGINTERN VALUE
15597
+ _wrap_Solver_correction(int argc, VALUE *argv, VALUE self) {
15598
+ GPS_Solver< double > *arg1 = (GPS_Solver< double > *) 0 ;
15599
+ void *argp1 = 0 ;
15600
+ int res1 = 0 ;
15601
+ VALUE result;
15602
+ VALUE vresult = Qnil;
15603
+
15604
+ if ((argc < 0) || (argc > 0)) {
15605
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
15606
+ }
15607
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverT_double_t, 0 | 0 );
15608
+ if (!SWIG_IsOK(res1)) {
15609
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_Solver< double > const *","get_correction", 1, self ));
15610
+ }
15611
+ arg1 = reinterpret_cast< GPS_Solver< double > * >(argp1);
15612
+ {
15613
+ try {
15614
+ result = (VALUE)GPS_Solver_Sl_double_Sg__get_correction((GPS_Solver< double > const *)arg1);
15615
+ } catch (const native_exception &e) {
15616
+ e.regenerate();
15617
+ SWIG_fail;
15618
+ } catch (const std::exception& e) {
15619
+ SWIG_exception_fail(SWIG_RuntimeError, e.what());
15620
+ }
15621
+ }
15622
+ vresult = result;
15623
+ return vresult;
15624
+ fail:
15625
+ return Qnil;
15626
+ }
15627
+
15628
+
15629
+ /*
15630
+ Document-method: GPS_PVT::GPS::Solver.correction=
15631
+
15632
+ call-seq:
15633
+ correction=(VALUE hash) -> VALUE
15634
+
15635
+ An instance method.
15636
+
15637
+ */
15638
+ SWIGINTERN VALUE
15639
+ _wrap_Solver_correctione___(int argc, VALUE *argv, VALUE self) {
15640
+ GPS_Solver< double > *arg1 = (GPS_Solver< double > *) 0 ;
15641
+ VALUE arg2 = (VALUE) 0 ;
15642
+ void *argp1 = 0 ;
15643
+ int res1 = 0 ;
15644
+ VALUE result;
15645
+ VALUE vresult = Qnil;
15646
+
15647
+ if ((argc < 1) || (argc > 1)) {
15648
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
15649
+ }
15650
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_GPS_SolverT_double_t, 0 | 0 );
15651
+ if (!SWIG_IsOK(res1)) {
15652
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "GPS_Solver< double > *","set_correction", 1, self ));
15653
+ }
15654
+ arg1 = reinterpret_cast< GPS_Solver< double > * >(argp1);
15655
+ arg2 = argv[0];
15656
+ {
15657
+ try {
15658
+ result = (VALUE)GPS_Solver_Sl_double_Sg__set_correction(arg1,arg2);
15659
+ } catch (const native_exception &e) {
15660
+ e.regenerate();
15661
+ SWIG_fail;
15662
+ } catch (const std::exception& e) {
15663
+ SWIG_exception_fail(SWIG_RuntimeError, e.what());
15664
+ }
15665
+ }
15666
+ vresult = result;
15667
+ return vresult;
15668
+ fail:
15669
+ return Qnil;
15670
+ }
15671
+
15672
+
15620
15673
  SWIGINTERN void
15621
15674
  free_GPS_Solver_Sl_double_Sg_(void *self) {
15622
15675
  GPS_Solver< double > *arg1 = (GPS_Solver< double > *)self;
@@ -17730,60 +17783,52 @@ fail:
17730
17783
  call-seq:
17731
17784
  tropo_correction(SBAS_SpaceNode< double >::float_t const & year_utc, ENU relative_pos, LLH usrllh) -> SBAS_SpaceNode< double >::float_t
17732
17785
 
17733
- An instance method.
17786
+ A class method.
17734
17787
 
17735
17788
  */
17736
17789
  SWIGINTERN VALUE
17737
17790
  _wrap_SpaceNode_SBAS_tropo_correction(int argc, VALUE *argv, VALUE self) {
17738
- SBAS_SpaceNode< double > *arg1 = (SBAS_SpaceNode< double > *) 0 ;
17739
- SBAS_SpaceNode< double >::float_t *arg2 = 0 ;
17740
- SBAS_SpaceNode< double >::enu_t *arg3 = 0 ;
17741
- SBAS_SpaceNode< double >::llh_t *arg4 = 0 ;
17742
- void *argp1 = 0 ;
17743
- int res1 = 0 ;
17744
- SBAS_SpaceNode< double >::float_t temp2 ;
17745
- double val2 ;
17746
- int ecode2 = 0 ;
17791
+ SBAS_SpaceNode< double >::float_t *arg1 = 0 ;
17792
+ SBAS_SpaceNode< double >::enu_t *arg2 = 0 ;
17793
+ SBAS_SpaceNode< double >::llh_t *arg3 = 0 ;
17794
+ SBAS_SpaceNode< double >::float_t temp1 ;
17795
+ double val1 ;
17796
+ int ecode1 = 0 ;
17797
+ void *argp2 ;
17798
+ int res2 = 0 ;
17747
17799
  void *argp3 ;
17748
17800
  int res3 = 0 ;
17749
- void *argp4 ;
17750
- int res4 = 0 ;
17751
17801
  SBAS_SpaceNode< double >::float_t result;
17752
17802
  VALUE vresult = Qnil;
17753
17803
 
17754
17804
  if ((argc < 3) || (argc > 3)) {
17755
17805
  rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
17756
17806
  }
17757
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_SBAS_SpaceNodeT_double_t, 0 | 0 );
17758
- if (!SWIG_IsOK(res1)) {
17759
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "SBAS_SpaceNode< double > const *","tropo_correction", 1, self ));
17760
- }
17761
- arg1 = reinterpret_cast< SBAS_SpaceNode< double > * >(argp1);
17762
- ecode2 = SWIG_AsVal_double(argv[0], &val2);
17763
- if (!SWIG_IsOK(ecode2)) {
17764
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "SBAS_SpaceNode< double >::float_t","tropo_correction", 2, argv[0] ));
17807
+ ecode1 = SWIG_AsVal_double(argv[0], &val1);
17808
+ if (!SWIG_IsOK(ecode1)) {
17809
+ SWIG_exception_fail(SWIG_ArgError(ecode1), Ruby_Format_TypeError( "", "SBAS_SpaceNode< double >::float_t","SBAS_SpaceNode<(double)>::tropo_correction", 1, argv[0] ));
17765
17810
  }
17766
- temp2 = static_cast< SBAS_SpaceNode< double >::float_t >(val2);
17767
- arg2 = &temp2;
17768
- res3 = SWIG_ConvertPtr(argv[1], &argp3, SWIGTYPE_p_System_ENUT_double_WGS84_t, 0 );
17769
- if (!SWIG_IsOK(res3)) {
17770
- SWIG_exception_fail(SWIG_ArgError(res3), Ruby_Format_TypeError( "", "SBAS_SpaceNode< double >::enu_t const &","tropo_correction", 3, argv[1] ));
17811
+ temp1 = static_cast< SBAS_SpaceNode< double >::float_t >(val1);
17812
+ arg1 = &temp1;
17813
+ res2 = SWIG_ConvertPtr(argv[1], &argp2, SWIGTYPE_p_System_ENUT_double_WGS84_t, 0 );
17814
+ if (!SWIG_IsOK(res2)) {
17815
+ SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "SBAS_SpaceNode< double >::enu_t const &","SBAS_SpaceNode<(double)>::tropo_correction", 2, argv[1] ));
17771
17816
  }
17772
- if (!argp3) {
17773
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "SBAS_SpaceNode< double >::enu_t const &","tropo_correction", 3, argv[1]));
17817
+ if (!argp2) {
17818
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "SBAS_SpaceNode< double >::enu_t const &","SBAS_SpaceNode<(double)>::tropo_correction", 2, argv[1]));
17774
17819
  }
17775
- arg3 = reinterpret_cast< SBAS_SpaceNode< double >::enu_t * >(argp3);
17776
- res4 = SWIG_ConvertPtr(argv[2], &argp4, SWIGTYPE_p_System_LLHT_double_WGS84_t, 0 );
17777
- if (!SWIG_IsOK(res4)) {
17778
- SWIG_exception_fail(SWIG_ArgError(res4), Ruby_Format_TypeError( "", "SBAS_SpaceNode< double >::llh_t const &","tropo_correction", 4, argv[2] ));
17820
+ arg2 = reinterpret_cast< SBAS_SpaceNode< double >::enu_t * >(argp2);
17821
+ res3 = SWIG_ConvertPtr(argv[2], &argp3, SWIGTYPE_p_System_LLHT_double_WGS84_t, 0 );
17822
+ if (!SWIG_IsOK(res3)) {
17823
+ SWIG_exception_fail(SWIG_ArgError(res3), Ruby_Format_TypeError( "", "SBAS_SpaceNode< double >::llh_t const &","SBAS_SpaceNode<(double)>::tropo_correction", 3, argv[2] ));
17779
17824
  }
17780
- if (!argp4) {
17781
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "SBAS_SpaceNode< double >::llh_t const &","tropo_correction", 4, argv[2]));
17825
+ if (!argp3) {
17826
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "SBAS_SpaceNode< double >::llh_t const &","SBAS_SpaceNode<(double)>::tropo_correction", 3, argv[2]));
17782
17827
  }
17783
- arg4 = reinterpret_cast< SBAS_SpaceNode< double >::llh_t * >(argp4);
17828
+ arg3 = reinterpret_cast< SBAS_SpaceNode< double >::llh_t * >(argp3);
17784
17829
  {
17785
17830
  try {
17786
- result = (SBAS_SpaceNode< double >::float_t)((SBAS_SpaceNode< double > const *)arg1)->tropo_correction((SBAS_SpaceNode< double >::float_t const &)*arg2,(SBAS_SpaceNode< double >::enu_t const &)*arg3,(SBAS_SpaceNode< double >::llh_t const &)*arg4);
17831
+ result = (SBAS_SpaceNode< double >::float_t)SBAS_SpaceNode< double >::SWIGTEMPLATEDISAMBIGUATOR tropo_correction((double const &)*arg1,(System_ENU< double,WGS84 > const &)*arg2,(System_LLH< double,WGS84 > const &)*arg3);
17787
17832
  } catch (const native_exception &e) {
17788
17833
  e.regenerate();
17789
17834
  SWIG_fail;
@@ -18966,12 +19011,12 @@ static swig_type_info _swigt__p_int_t = {"_p_int_t", "int_t *", 0, 0, (void*)0,
18966
19011
  static swig_type_info _swigt__p_llh_t = {"_p_llh_t", "llh_t *", 0, 0, (void*)0, 0};
18967
19012
  static swig_type_info _swigt__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__detection_t = {"_p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__detection_t", "GPS_User_PVT< double >::base_t::detection_t **|GPS_Solver_RAIM_LSR< double,GPS_Solver_Base_Debug< double,GPS_Solver_Base< double > > >::user_pvt_t::detection_t **", 0, 0, (void*)0, 0};
18968
19013
  static swig_type_info _swigt__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__exclusion_t = {"_p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__exclusion_t", "GPS_User_PVT< double >::base_t::exclusion_t **|GPS_Solver_RAIM_LSR< double,GPS_Solver_Base_Debug< double,GPS_Solver_Base< double > > >::user_pvt_t::exclusion_t **", 0, 0, (void*)0, 0};
19014
+ static swig_type_info _swigt__p_range_correction_list_t = {"_p_range_correction_list_t", "range_correction_list_t *", 0, 0, (void*)0, 0};
18969
19015
  static swig_type_info _swigt__p_s16_t = {"_p_s16_t", "s16_t *", 0, 0, (void*)0, 0};
18970
19016
  static swig_type_info _swigt__p_s32_t = {"_p_s32_t", "s32_t *", 0, 0, (void*)0, 0};
18971
19017
  static swig_type_info _swigt__p_s8_t = {"_p_s8_t", "s8_t *", 0, 0, (void*)0, 0};
18972
19018
  static swig_type_info _swigt__p_satellites_t = {"_p_satellites_t", "satellites_t *", 0, 0, (void*)0, 0};
18973
19019
  static swig_type_info _swigt__p_self_t = {"_p_self_t", "self_t *", 0, 0, (void*)0, 0};
18974
- static swig_type_info _swigt__p_std__vectorT_int_t = {"_p_std__vectorT_int_t", "std::vector< int > *", 0, 0, (void*)0, 0};
18975
19020
  static swig_type_info _swigt__p_std__vectorT_std__pairT_int_SBAS_SpaceNodeT_double_t__Satellite_const_p_t_t = {"_p_std__vectorT_std__pairT_int_SBAS_SpaceNodeT_double_t__Satellite_const_p_t_t", "SBAS_SpaceNode< double >::available_satellites_t *|std::vector< std::pair< int,SBAS_SpaceNode< double >::Satellite const * > > *", 0, 0, (void*)0, 0};
18976
19021
  static swig_type_info _swigt__p_swig__GC_VALUE = {"_p_swig__GC_VALUE", "swig::GC_VALUE *", 0, 0, (void*)0, 0};
18977
19022
  static swig_type_info _swigt__p_u16_t = {"_p_u16_t", "u16_t *", 0, 0, (void*)0, 0};
@@ -19023,12 +19068,12 @@ static swig_type_info *swig_type_initial[] = {
19023
19068
  &_swigt__p_llh_t,
19024
19069
  &_swigt__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__detection_t,
19025
19070
  &_swigt__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__exclusion_t,
19071
+ &_swigt__p_range_correction_list_t,
19026
19072
  &_swigt__p_s16_t,
19027
19073
  &_swigt__p_s32_t,
19028
19074
  &_swigt__p_s8_t,
19029
19075
  &_swigt__p_satellites_t,
19030
19076
  &_swigt__p_self_t,
19031
- &_swigt__p_std__vectorT_int_t,
19032
19077
  &_swigt__p_std__vectorT_std__pairT_int_SBAS_SpaceNodeT_double_t__Satellite_const_p_t_t,
19033
19078
  &_swigt__p_swig__GC_VALUE,
19034
19079
  &_swigt__p_u16_t,
@@ -19080,12 +19125,12 @@ static swig_cast_info _swigc__p_int_t[] = { {&_swigt__p_int_t, 0, 0, 0},{0, 0,
19080
19125
  static swig_cast_info _swigc__p_llh_t[] = { {&_swigt__p_llh_t, 0, 0, 0},{0, 0, 0, 0}};
19081
19126
  static swig_cast_info _swigc__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__detection_t[] = { {&_swigt__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__detection_t, 0, 0, 0},{0, 0, 0, 0}};
19082
19127
  static swig_cast_info _swigc__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__exclusion_t[] = { {&_swigt__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__exclusion_t, 0, 0, 0},{0, 0, 0, 0}};
19128
+ static swig_cast_info _swigc__p_range_correction_list_t[] = { {&_swigt__p_range_correction_list_t, 0, 0, 0},{0, 0, 0, 0}};
19083
19129
  static swig_cast_info _swigc__p_s16_t[] = { {&_swigt__p_s16_t, 0, 0, 0},{0, 0, 0, 0}};
19084
19130
  static swig_cast_info _swigc__p_s32_t[] = { {&_swigt__p_s32_t, 0, 0, 0},{0, 0, 0, 0}};
19085
19131
  static swig_cast_info _swigc__p_s8_t[] = { {&_swigt__p_s8_t, 0, 0, 0},{0, 0, 0, 0}};
19086
19132
  static swig_cast_info _swigc__p_satellites_t[] = { {&_swigt__p_satellites_t, 0, 0, 0},{0, 0, 0, 0}};
19087
19133
  static swig_cast_info _swigc__p_self_t[] = { {&_swigt__p_self_t, 0, 0, 0},{0, 0, 0, 0}};
19088
- static swig_cast_info _swigc__p_std__vectorT_int_t[] = { {&_swigt__p_std__vectorT_int_t, 0, 0, 0},{0, 0, 0, 0}};
19089
19134
  static swig_cast_info _swigc__p_std__vectorT_std__pairT_int_SBAS_SpaceNodeT_double_t__Satellite_const_p_t_t[] = { {&_swigt__p_std__vectorT_std__pairT_int_SBAS_SpaceNodeT_double_t__Satellite_const_p_t_t, 0, 0, 0},{0, 0, 0, 0}};
19090
19135
  static swig_cast_info _swigc__p_swig__GC_VALUE[] = { {&_swigt__p_swig__GC_VALUE, 0, 0, 0},{0, 0, 0, 0}};
19091
19136
  static swig_cast_info _swigc__p_u16_t[] = { {&_swigt__p_u16_t, 0, 0, 0},{0, 0, 0, 0}};
@@ -19137,12 +19182,12 @@ static swig_cast_info *swig_cast_initial[] = {
19137
19182
  _swigc__p_llh_t,
19138
19183
  _swigc__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__detection_t,
19139
19184
  _swigc__p_p_GPS_Solver_RAIM_LSRT_double_GPS_Solver_Base_DebugT_double_GPS_Solver_BaseT_double_t_t_t__user_pvt_t__exclusion_t,
19185
+ _swigc__p_range_correction_list_t,
19140
19186
  _swigc__p_s16_t,
19141
19187
  _swigc__p_s32_t,
19142
19188
  _swigc__p_s8_t,
19143
19189
  _swigc__p_satellites_t,
19144
19190
  _swigc__p_self_t,
19145
- _swigc__p_std__vectorT_int_t,
19146
19191
  _swigc__p_std__vectorT_std__pairT_int_SBAS_SpaceNodeT_double_t__Satellite_const_p_t_t,
19147
19192
  _swigc__p_swig__GC_VALUE,
19148
19193
  _swigc__p_u16_t,
@@ -19433,7 +19478,6 @@ SWIGEXPORT void Init_GPS(void) {
19433
19478
  rb_define_method(SwigClassTime.klass, "week", VALUEFUNC(_wrap_Time_week_get), -1);
19434
19479
  rb_define_method(SwigClassTime.klass, "seconds=", VALUEFUNC(_wrap_Time_seconds_set), -1);
19435
19480
  rb_define_method(SwigClassTime.klass, "seconds", VALUEFUNC(_wrap_Time_seconds_get), -1);
19436
- rb_define_method(SwigClassTime.klass, "canonicalize", VALUEFUNC(_wrap_Time_canonicalize), -1);
19437
19481
  rb_define_singleton_method(SwigClassTime.klass, "now", VALUEFUNC(_wrap_Time_now), -1);
19438
19482
  rb_define_method(SwigClassTime.klass, "serialize", VALUEFUNC(_wrap_Time_serialize), -1);
19439
19483
  rb_define_method(SwigClassTime.klass, "+", VALUEFUNC(_wrap_Time___add__), -1);
@@ -19449,6 +19493,7 @@ SWIGEXPORT void Init_GPS(void) {
19449
19493
  rb_define_singleton_method(SwigClassTime.klass, "leap_second_events", VALUEFUNC(_wrap_Time_leap_second_events_get), 0);
19450
19494
  rb_define_singleton_method(SwigClassTime.klass, "guess_leap_seconds", VALUEFUNC(_wrap_Time_guess_leap_seconds), -1);
19451
19495
  rb_define_method(SwigClassTime.klass, "to_a", VALUEFUNC(_wrap_Time_to_a), -1);
19496
+ rb_define_method(SwigClassTime.klass, "<=>", VALUEFUNC(_wrap_Time___cmp__), -1);
19452
19497
  SwigClassTime.mark = 0;
19453
19498
  SwigClassTime.destroy = (void (*)(void *)) free_GPS_Time_Sl_double_Sg_;
19454
19499
  SwigClassTime.trackObjects = 0;
@@ -19464,6 +19509,7 @@ SWIGEXPORT void Init_GPS(void) {
19464
19509
  rb_define_singleton_method(SwigClassSpaceNode.klass, "L2_Frequency", VALUEFUNC(_wrap_SpaceNode_L2_Frequency_get), 0);
19465
19510
  rb_define_singleton_method(SwigClassSpaceNode.klass, "L2_WaveLength", VALUEFUNC(_wrap_SpaceNode_L2_WaveLength), -1);
19466
19511
  rb_define_singleton_method(SwigClassSpaceNode.klass, "gamma_L1_L2", VALUEFUNC(_wrap_SpaceNode_gamma_L1_L2_get), 0);
19512
+ rb_define_singleton_method(SwigClassSpaceNode.klass, "gamma_per_L1", VALUEFUNC(_wrap_SpaceNode_gamma_per_L1), -1);
19467
19513
  rb_define_method(SwigClassSpaceNode.klass, "iono_utc", VALUEFUNC(_wrap_SpaceNode_iono_utc), -1);
19468
19514
  rb_define_method(SwigClassSpaceNode.klass, "is_valid_iono", VALUEFUNC(_wrap_SpaceNode_is_valid_iono), -1);
19469
19515
  rb_define_method(SwigClassSpaceNode.klass, "is_valid_utc", VALUEFUNC(_wrap_SpaceNode_is_valid_utc), -1);
@@ -19477,7 +19523,7 @@ SWIGEXPORT void Init_GPS(void) {
19477
19523
  rb_define_singleton_method(SwigClassSpaceNode.klass, "tec2delay", VALUEFUNC(_wrap_SpaceNode_tec2delay), -1);
19478
19524
  rb_define_method(SwigClassSpaceNode.klass, "iono_correction", VALUEFUNC(_wrap_SpaceNode_iono_correction), -1);
19479
19525
  rb_define_singleton_method(SwigClassSpaceNode.klass, "tropo_correction_zenith_hydrostatic_Saastamoinen", VALUEFUNC(_wrap_SpaceNode_tropo_correction_zenith_hydrostatic_Saastamoinen), -1);
19480
- rb_define_method(SwigClassSpaceNode.klass, "tropo_correction", VALUEFUNC(_wrap_SpaceNode_tropo_correction), -1);
19526
+ rb_define_singleton_method(SwigClassSpaceNode.klass, "tropo_correction", VALUEFUNC(_wrap_SpaceNode_tropo_correction), -1);
19481
19527
  rb_define_method(SwigClassSpaceNode.klass, "register_ephemeris", VALUEFUNC(_wrap_SpaceNode_register_ephemeris), -1);
19482
19528
  rb_define_method(SwigClassSpaceNode.klass, "ephemeris", VALUEFUNC(_wrap_SpaceNode_ephemeris), -1);
19483
19529
  rb_define_method(SwigClassSpaceNode.klass, "read", VALUEFUNC(_wrap_SpaceNode_read), -1);
@@ -19646,6 +19692,7 @@ SWIGEXPORT void Init_GPS(void) {
19646
19692
  rb_define_const(SwigClassMeasurement.klass, "L1_RANGE_RATE_SIGMA", SWIG_From_int(static_cast< int >(GPS_Measurement< double >::L1_RANGE_RATE_SIGMA)));
19647
19693
  rb_define_const(SwigClassMeasurement.klass, "L1_SIGNAL_STRENGTH_dBHz", SWIG_From_int(static_cast< int >(GPS_Measurement< double >::L1_SIGNAL_STRENGTH_dBHz)));
19648
19694
  rb_define_const(SwigClassMeasurement.klass, "L1_LOCK_SEC", SWIG_From_int(static_cast< int >(GPS_Measurement< double >::L1_LOCK_SEC)));
19695
+ rb_define_const(SwigClassMeasurement.klass, "L1_FREQUENCY", SWIG_From_int(static_cast< int >(GPS_Measurement< double >::L1_FREQUENCY)));
19649
19696
  rb_define_const(SwigClassMeasurement.klass, "ITEMS_PREDEFINED", SWIG_From_int(static_cast< int >(GPS_Measurement< double >::ITEMS_PREDEFINED)));
19650
19697
  rb_define_method(SwigClassMeasurement.klass, "add", VALUEFUNC(_wrap_Measurement_add), -1);
19651
19698
  rb_define_method(SwigClassMeasurement.klass, "each", VALUEFUNC(_wrap_Measurement_each), -1);
@@ -19657,21 +19704,11 @@ SWIGEXPORT void Init_GPS(void) {
19657
19704
  SwigClassSolverOptionsCommon.klass = rb_define_class_under(mGPS, "SolverOptionsCommon", rb_cObject);
19658
19705
  SWIG_TypeClientData(SWIGTYPE_p_GPS_SolverOptions_CommonT_double_t, (void *) &SwigClassSolverOptionsCommon);
19659
19706
  rb_undef_alloc_func(SwigClassSolverOptionsCommon.klass);
19660
- rb_define_const(SwigClassSolverOptionsCommon.klass, "IONOSPHERIC_KLOBUCHAR", SWIG_From_int(static_cast< int >(GPS_SolverOptions_Common< double >::IONOSPHERIC_KLOBUCHAR)));
19661
- rb_define_const(SwigClassSolverOptionsCommon.klass, "IONOSPHERIC_SBAS", SWIG_From_int(static_cast< int >(GPS_SolverOptions_Common< double >::IONOSPHERIC_SBAS)));
19662
- rb_define_const(SwigClassSolverOptionsCommon.klass, "IONOSPHERIC_NTCM_GL", SWIG_From_int(static_cast< int >(GPS_SolverOptions_Common< double >::IONOSPHERIC_NTCM_GL)));
19663
- rb_define_const(SwigClassSolverOptionsCommon.klass, "IONOSPHERIC_NONE", SWIG_From_int(static_cast< int >(GPS_SolverOptions_Common< double >::IONOSPHERIC_NONE)));
19664
- rb_define_const(SwigClassSolverOptionsCommon.klass, "IONOSPHERIC_MODELS", SWIG_From_int(static_cast< int >(GPS_SolverOptions_Common< double >::IONOSPHERIC_MODELS)));
19665
- rb_define_const(SwigClassSolverOptionsCommon.klass, "IONOSPHERIC_SKIP", SWIG_From_int(static_cast< int >(GPS_SolverOptions_Common< double >::IONOSPHERIC_SKIP)));
19666
19707
  rb_define_method(SwigClassSolverOptionsCommon.klass, "cast_general", VALUEFUNC(_wrap_SolverOptionsCommon_cast_general), -1);
19667
- rb_define_method(SwigClassSolverOptionsCommon.klass, "ionospheric_models", VALUEFUNC(_wrap_SolverOptionsCommon_ionospheric_models), -1);
19668
- rb_define_method(SwigClassSolverOptionsCommon.klass, "ionospheric_models=", VALUEFUNC(_wrap_SolverOptionsCommon_ionospheric_modelse___), -1);
19669
19708
  rb_define_method(SwigClassSolverOptionsCommon.klass, "elevation_mask=", VALUEFUNC(_wrap_SolverOptionsCommon_elevation_maske___), -1);
19670
19709
  rb_define_method(SwigClassSolverOptionsCommon.klass, "elevation_mask", VALUEFUNC(_wrap_SolverOptionsCommon_elevation_mask), -1);
19671
19710
  rb_define_method(SwigClassSolverOptionsCommon.klass, "residual_mask=", VALUEFUNC(_wrap_SolverOptionsCommon_residual_maske___), -1);
19672
19711
  rb_define_method(SwigClassSolverOptionsCommon.klass, "residual_mask", VALUEFUNC(_wrap_SolverOptionsCommon_residual_mask), -1);
19673
- rb_define_method(SwigClassSolverOptionsCommon.klass, "f_10_7=", VALUEFUNC(_wrap_SolverOptionsCommon_f_10_7e___), -1);
19674
- rb_define_method(SwigClassSolverOptionsCommon.klass, "f_10_7", VALUEFUNC(_wrap_SolverOptionsCommon_f_10_7), -1);
19675
19712
  SwigClassSolverOptionsCommon.mark = 0;
19676
19713
  SwigClassSolverOptionsCommon.destroy = (void (*)(void *)) free_GPS_SolverOptions_Common_Sl_double_Sg_;
19677
19714
  SwigClassSolverOptionsCommon.trackObjects = 0;
@@ -19697,6 +19734,8 @@ SWIGEXPORT void Init_GPS(void) {
19697
19734
  rb_define_method(SwigClassSolver.klass, "sbas_space_node", VALUEFUNC(_wrap_Solver_sbas_space_node), -1);
19698
19735
  rb_define_method(SwigClassSolver.klass, "sbas_options", VALUEFUNC(_wrap_Solver_sbas_options), -1);
19699
19736
  rb_define_method(SwigClassSolver.klass, "solve", VALUEFUNC(_wrap_Solver_solve), -1);
19737
+ rb_define_method(SwigClassSolver.klass, "correction", VALUEFUNC(_wrap_Solver_correction), -1);
19738
+ rb_define_method(SwigClassSolver.klass, "correction=", VALUEFUNC(_wrap_Solver_correctione___), -1);
19700
19739
  SwigClassSolver.mark = (void (*)(void *)) GPS_Solver<double>::mark;
19701
19740
  SwigClassSolver.destroy = (void (*)(void *)) free_GPS_Solver_Sl_double_Sg_;
19702
19741
  SwigClassSolver.trackObjects = 0;
@@ -19766,7 +19805,7 @@ SWIGEXPORT void Init_GPS(void) {
19766
19805
  rb_define_const(SwigClassSpaceNode_SBAS.klass, "NULL_MESSAGES", SWIG_From_int(static_cast< int >(SBAS_SpaceNode< double >::NULL_MESSAGES)));
19767
19806
  rb_define_const(SwigClassSpaceNode_SBAS.klass, "UNSUPPORTED_MESSAGE", SWIG_From_int(static_cast< int >(SBAS_SpaceNode< double >::UNSUPPORTED_MESSAGE)));
19768
19807
  rb_define_singleton_method(SwigClassSpaceNode_SBAS.klass, "sagnac_correction", VALUEFUNC(_wrap_SpaceNode_SBAS_sagnac_correction), -1);
19769
- rb_define_method(SwigClassSpaceNode_SBAS.klass, "tropo_correction", VALUEFUNC(_wrap_SpaceNode_SBAS_tropo_correction), -1);
19808
+ rb_define_singleton_method(SwigClassSpaceNode_SBAS.klass, "tropo_correction", VALUEFUNC(_wrap_SpaceNode_SBAS_tropo_correction), -1);
19770
19809
  rb_define_method(SwigClassSpaceNode_SBAS.klass, "has_satellite", VALUEFUNC(_wrap_SpaceNode_SBAS_has_satellite), -1);
19771
19810
  rb_define_method(SwigClassSpaceNode_SBAS.klass, "update_all_ephemeris", VALUEFUNC(_wrap_SpaceNode_SBAS_update_all_ephemeris), -1);
19772
19811
  rb_define_method(SwigClassSpaceNode_SBAS.klass, "available_satellites", VALUEFUNC(_wrap_SpaceNode_SBAS_available_satellites), -1);