You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
375 lines
9.4 KiB
375 lines
9.4 KiB
#ifndef GLONASS_H_
|
|
#define GLONASS_H_
|
|
|
|
// This is a generated file! Please edit source .ksy file and use kaitai-struct-compiler to rebuild
|
|
|
|
#include "kaitai/kaitaistruct.h"
|
|
#include <stdint.h>
|
|
|
|
#if KAITAI_STRUCT_VERSION < 9000L
|
|
#error "Incompatible Kaitai Struct C++/STL API: version 0.9 or later is required"
|
|
#endif
|
|
|
|
class glonass_t : public kaitai::kstruct {
|
|
|
|
public:
|
|
class string_4_t;
|
|
class string_non_immediate_t;
|
|
class string_5_t;
|
|
class string_1_t;
|
|
class string_2_t;
|
|
class string_3_t;
|
|
|
|
glonass_t(kaitai::kstream* p__io, kaitai::kstruct* p__parent = 0, glonass_t* p__root = 0);
|
|
|
|
private:
|
|
void _read();
|
|
void _clean_up();
|
|
|
|
public:
|
|
~glonass_t();
|
|
|
|
class string_4_t : public kaitai::kstruct {
|
|
|
|
public:
|
|
|
|
string_4_t(kaitai::kstream* p__io, glonass_t* p__parent = 0, glonass_t* p__root = 0);
|
|
|
|
private:
|
|
void _read();
|
|
void _clean_up();
|
|
|
|
public:
|
|
~string_4_t();
|
|
|
|
private:
|
|
bool f_tau_n;
|
|
int32_t m_tau_n;
|
|
|
|
public:
|
|
int32_t tau_n();
|
|
|
|
private:
|
|
bool f_delta_tau_n;
|
|
int32_t m_delta_tau_n;
|
|
|
|
public:
|
|
int32_t delta_tau_n();
|
|
|
|
private:
|
|
bool m_tau_n_sign;
|
|
uint64_t m_tau_n_value;
|
|
bool m_delta_tau_n_sign;
|
|
uint64_t m_delta_tau_n_value;
|
|
uint64_t m_e_n;
|
|
uint64_t m_not_used_1;
|
|
bool m_p4;
|
|
uint64_t m_f_t;
|
|
uint64_t m_not_used_2;
|
|
uint64_t m_n_t;
|
|
uint64_t m_n;
|
|
uint64_t m_m;
|
|
glonass_t* m__root;
|
|
glonass_t* m__parent;
|
|
|
|
public:
|
|
bool tau_n_sign() const { return m_tau_n_sign; }
|
|
uint64_t tau_n_value() const { return m_tau_n_value; }
|
|
bool delta_tau_n_sign() const { return m_delta_tau_n_sign; }
|
|
uint64_t delta_tau_n_value() const { return m_delta_tau_n_value; }
|
|
uint64_t e_n() const { return m_e_n; }
|
|
uint64_t not_used_1() const { return m_not_used_1; }
|
|
bool p4() const { return m_p4; }
|
|
uint64_t f_t() const { return m_f_t; }
|
|
uint64_t not_used_2() const { return m_not_used_2; }
|
|
uint64_t n_t() const { return m_n_t; }
|
|
uint64_t n() const { return m_n; }
|
|
uint64_t m() const { return m_m; }
|
|
glonass_t* _root() const { return m__root; }
|
|
glonass_t* _parent() const { return m__parent; }
|
|
};
|
|
|
|
class string_non_immediate_t : public kaitai::kstruct {
|
|
|
|
public:
|
|
|
|
string_non_immediate_t(kaitai::kstream* p__io, glonass_t* p__parent = 0, glonass_t* p__root = 0);
|
|
|
|
private:
|
|
void _read();
|
|
void _clean_up();
|
|
|
|
public:
|
|
~string_non_immediate_t();
|
|
|
|
private:
|
|
uint64_t m_data_1;
|
|
uint64_t m_data_2;
|
|
glonass_t* m__root;
|
|
glonass_t* m__parent;
|
|
|
|
public:
|
|
uint64_t data_1() const { return m_data_1; }
|
|
uint64_t data_2() const { return m_data_2; }
|
|
glonass_t* _root() const { return m__root; }
|
|
glonass_t* _parent() const { return m__parent; }
|
|
};
|
|
|
|
class string_5_t : public kaitai::kstruct {
|
|
|
|
public:
|
|
|
|
string_5_t(kaitai::kstream* p__io, glonass_t* p__parent = 0, glonass_t* p__root = 0);
|
|
|
|
private:
|
|
void _read();
|
|
void _clean_up();
|
|
|
|
public:
|
|
~string_5_t();
|
|
|
|
private:
|
|
uint64_t m_n_a;
|
|
uint64_t m_tau_c;
|
|
bool m_not_used;
|
|
uint64_t m_n_4;
|
|
uint64_t m_tau_gps;
|
|
bool m_l_n;
|
|
glonass_t* m__root;
|
|
glonass_t* m__parent;
|
|
|
|
public:
|
|
uint64_t n_a() const { return m_n_a; }
|
|
uint64_t tau_c() const { return m_tau_c; }
|
|
bool not_used() const { return m_not_used; }
|
|
uint64_t n_4() const { return m_n_4; }
|
|
uint64_t tau_gps() const { return m_tau_gps; }
|
|
bool l_n() const { return m_l_n; }
|
|
glonass_t* _root() const { return m__root; }
|
|
glonass_t* _parent() const { return m__parent; }
|
|
};
|
|
|
|
class string_1_t : public kaitai::kstruct {
|
|
|
|
public:
|
|
|
|
string_1_t(kaitai::kstream* p__io, glonass_t* p__parent = 0, glonass_t* p__root = 0);
|
|
|
|
private:
|
|
void _read();
|
|
void _clean_up();
|
|
|
|
public:
|
|
~string_1_t();
|
|
|
|
private:
|
|
bool f_x_vel;
|
|
int32_t m_x_vel;
|
|
|
|
public:
|
|
int32_t x_vel();
|
|
|
|
private:
|
|
bool f_x_accel;
|
|
int32_t m_x_accel;
|
|
|
|
public:
|
|
int32_t x_accel();
|
|
|
|
private:
|
|
bool f_x;
|
|
int32_t m_x;
|
|
|
|
public:
|
|
int32_t x();
|
|
|
|
private:
|
|
uint64_t m_not_used;
|
|
uint64_t m_p1;
|
|
uint64_t m_t_k;
|
|
bool m_x_vel_sign;
|
|
uint64_t m_x_vel_value;
|
|
bool m_x_accel_sign;
|
|
uint64_t m_x_accel_value;
|
|
bool m_x_sign;
|
|
uint64_t m_x_value;
|
|
glonass_t* m__root;
|
|
glonass_t* m__parent;
|
|
|
|
public:
|
|
uint64_t not_used() const { return m_not_used; }
|
|
uint64_t p1() const { return m_p1; }
|
|
uint64_t t_k() const { return m_t_k; }
|
|
bool x_vel_sign() const { return m_x_vel_sign; }
|
|
uint64_t x_vel_value() const { return m_x_vel_value; }
|
|
bool x_accel_sign() const { return m_x_accel_sign; }
|
|
uint64_t x_accel_value() const { return m_x_accel_value; }
|
|
bool x_sign() const { return m_x_sign; }
|
|
uint64_t x_value() const { return m_x_value; }
|
|
glonass_t* _root() const { return m__root; }
|
|
glonass_t* _parent() const { return m__parent; }
|
|
};
|
|
|
|
class string_2_t : public kaitai::kstruct {
|
|
|
|
public:
|
|
|
|
string_2_t(kaitai::kstream* p__io, glonass_t* p__parent = 0, glonass_t* p__root = 0);
|
|
|
|
private:
|
|
void _read();
|
|
void _clean_up();
|
|
|
|
public:
|
|
~string_2_t();
|
|
|
|
private:
|
|
bool f_y_vel;
|
|
int32_t m_y_vel;
|
|
|
|
public:
|
|
int32_t y_vel();
|
|
|
|
private:
|
|
bool f_y_accel;
|
|
int32_t m_y_accel;
|
|
|
|
public:
|
|
int32_t y_accel();
|
|
|
|
private:
|
|
bool f_y;
|
|
int32_t m_y;
|
|
|
|
public:
|
|
int32_t y();
|
|
|
|
private:
|
|
uint64_t m_b_n;
|
|
bool m_p2;
|
|
uint64_t m_t_b;
|
|
uint64_t m_not_used;
|
|
bool m_y_vel_sign;
|
|
uint64_t m_y_vel_value;
|
|
bool m_y_accel_sign;
|
|
uint64_t m_y_accel_value;
|
|
bool m_y_sign;
|
|
uint64_t m_y_value;
|
|
glonass_t* m__root;
|
|
glonass_t* m__parent;
|
|
|
|
public:
|
|
uint64_t b_n() const { return m_b_n; }
|
|
bool p2() const { return m_p2; }
|
|
uint64_t t_b() const { return m_t_b; }
|
|
uint64_t not_used() const { return m_not_used; }
|
|
bool y_vel_sign() const { return m_y_vel_sign; }
|
|
uint64_t y_vel_value() const { return m_y_vel_value; }
|
|
bool y_accel_sign() const { return m_y_accel_sign; }
|
|
uint64_t y_accel_value() const { return m_y_accel_value; }
|
|
bool y_sign() const { return m_y_sign; }
|
|
uint64_t y_value() const { return m_y_value; }
|
|
glonass_t* _root() const { return m__root; }
|
|
glonass_t* _parent() const { return m__parent; }
|
|
};
|
|
|
|
class string_3_t : public kaitai::kstruct {
|
|
|
|
public:
|
|
|
|
string_3_t(kaitai::kstream* p__io, glonass_t* p__parent = 0, glonass_t* p__root = 0);
|
|
|
|
private:
|
|
void _read();
|
|
void _clean_up();
|
|
|
|
public:
|
|
~string_3_t();
|
|
|
|
private:
|
|
bool f_gamma_n;
|
|
int32_t m_gamma_n;
|
|
|
|
public:
|
|
int32_t gamma_n();
|
|
|
|
private:
|
|
bool f_z_vel;
|
|
int32_t m_z_vel;
|
|
|
|
public:
|
|
int32_t z_vel();
|
|
|
|
private:
|
|
bool f_z_accel;
|
|
int32_t m_z_accel;
|
|
|
|
public:
|
|
int32_t z_accel();
|
|
|
|
private:
|
|
bool f_z;
|
|
int32_t m_z;
|
|
|
|
public:
|
|
int32_t z();
|
|
|
|
private:
|
|
bool m_p3;
|
|
bool m_gamma_n_sign;
|
|
uint64_t m_gamma_n_value;
|
|
bool m_not_used;
|
|
uint64_t m_p;
|
|
bool m_l_n;
|
|
bool m_z_vel_sign;
|
|
uint64_t m_z_vel_value;
|
|
bool m_z_accel_sign;
|
|
uint64_t m_z_accel_value;
|
|
bool m_z_sign;
|
|
uint64_t m_z_value;
|
|
glonass_t* m__root;
|
|
glonass_t* m__parent;
|
|
|
|
public:
|
|
bool p3() const { return m_p3; }
|
|
bool gamma_n_sign() const { return m_gamma_n_sign; }
|
|
uint64_t gamma_n_value() const { return m_gamma_n_value; }
|
|
bool not_used() const { return m_not_used; }
|
|
uint64_t p() const { return m_p; }
|
|
bool l_n() const { return m_l_n; }
|
|
bool z_vel_sign() const { return m_z_vel_sign; }
|
|
uint64_t z_vel_value() const { return m_z_vel_value; }
|
|
bool z_accel_sign() const { return m_z_accel_sign; }
|
|
uint64_t z_accel_value() const { return m_z_accel_value; }
|
|
bool z_sign() const { return m_z_sign; }
|
|
uint64_t z_value() const { return m_z_value; }
|
|
glonass_t* _root() const { return m__root; }
|
|
glonass_t* _parent() const { return m__parent; }
|
|
};
|
|
|
|
private:
|
|
bool m_idle_chip;
|
|
uint64_t m_string_number;
|
|
kaitai::kstruct* m_data;
|
|
uint64_t m_hamming_code;
|
|
uint64_t m_pad_1;
|
|
uint64_t m_superframe_number;
|
|
uint64_t m_pad_2;
|
|
uint64_t m_frame_number;
|
|
glonass_t* m__root;
|
|
kaitai::kstruct* m__parent;
|
|
|
|
public:
|
|
bool idle_chip() const { return m_idle_chip; }
|
|
uint64_t string_number() const { return m_string_number; }
|
|
kaitai::kstruct* data() const { return m_data; }
|
|
uint64_t hamming_code() const { return m_hamming_code; }
|
|
uint64_t pad_1() const { return m_pad_1; }
|
|
uint64_t superframe_number() const { return m_superframe_number; }
|
|
uint64_t pad_2() const { return m_pad_2; }
|
|
uint64_t frame_number() const { return m_frame_number; }
|
|
glonass_t* _root() const { return m__root; }
|
|
kaitai::kstruct* _parent() const { return m__parent; }
|
|
};
|
|
|
|
#endif // GLONASS_H_
|
|
|