@@ -15,6 +15,7 @@ class bits_byte_aligned_t;
1515class bits_byte_aligned_t : public kaitai ::kstruct {
1616
1717public:
18+ class foo_t ;
1819
1920 bits_byte_aligned_t (kaitai::kstream* p__io, kaitai::kstruct* p__parent = nullptr , bits_byte_aligned_t * p__root = nullptr );
2021
@@ -24,28 +25,62 @@ class bits_byte_aligned_t : public kaitai::kstruct {
2425
2526public:
2627 ~bits_byte_aligned_t ();
28+
29+ class foo_t : public kaitai ::kstruct {
30+
31+ public:
32+
33+ foo_t (kaitai::kstream* p__io, bits_byte_aligned_t * p__parent = nullptr , bits_byte_aligned_t * p__root = nullptr );
34+
35+ private:
36+ void _read ();
37+ void _clean_up ();
38+
39+ public:
40+ ~foo_t ();
41+ uint64_t inner () const { return m_inner; }
42+ bits_byte_aligned_t * _root () const { return m__root; }
43+ bits_byte_aligned_t * _parent () const { return m__parent; }
44+
45+ private:
46+ uint64_t m_inner;
47+ bits_byte_aligned_t * m__root;
48+ bits_byte_aligned_t * m__parent;
49+ };
50+
51+ public:
2752 uint64_t one () const { return m_one; }
2853 uint8_t byte_1 () const { return m_byte_1; }
2954 uint64_t two () const { return m_two; }
3055 bool three () const { return m_three; }
31- uint8_t byte_2 () const { return m_byte_2; }
56+ std::string byte_2 () const { return m_byte_2; }
3257 uint64_t four () const { return m_four; }
33- std::string byte_3 () const { return m_byte_3; }
58+ foo_t * byte_3 () const { return m_byte_3. get () ; }
3459 uint64_t full_byte () const { return m_full_byte; }
3560 uint8_t byte_4 () const { return m_byte_4; }
61+ uint64_t five () const { return m_five; }
62+ std::string bytes_term () const { return m_bytes_term; }
63+ uint64_t six () const { return m_six; }
3664 bits_byte_aligned_t * _root () const { return m__root; }
3765 kaitai::kstruct* _parent () const { return m__parent; }
66+ std::string _raw_byte_3 () const { return m__raw_byte_3; }
67+ kaitai::kstream* _io__raw_byte_3 () const { return m__io__raw_byte_3.get (); }
3868
3969private:
4070 uint64_t m_one;
4171 uint8_t m_byte_1;
4272 uint64_t m_two;
4373 bool m_three;
44- uint8_t m_byte_2;
74+ std::string m_byte_2;
4575 uint64_t m_four;
46- std::string m_byte_3;
76+ std::unique_ptr< foo_t > m_byte_3;
4777 uint64_t m_full_byte;
4878 uint8_t m_byte_4;
79+ uint64_t m_five;
80+ std::string m_bytes_term;
81+ uint64_t m_six;
4982 bits_byte_aligned_t * m__root;
5083 kaitai::kstruct* m__parent;
84+ std::string m__raw_byte_3;
85+ std::unique_ptr<kaitai::kstream> m__io__raw_byte_3;
5186};
0 commit comments