#ifndef _FRAMES_H_
#define _FRAMES_H_

#include "registers.h"

extern "C"{
    namespace vn{
        typedef struct QuaternionMagneticAccelerationAndAngularRates{
            static constexpr uint16_t ID = 8;
            QuaternionMagneticAccelerationAndAngularRatesRegister Register;
            QuaternionMagneticAccelerationAndAngularRates(){
                memset(&Register, 0, sizeof(Register));
            }
        };

        typedef struct InsSolutionLla{
            static constexpr uint16_t ID = 63;
            InsSolutionLlaRegister Register;
            InsSolutionLla(){
                memset(&Register, 0, sizeof(Register));
            }
        };

        typedef struct GpsSolutionLla{
            static constexpr uint16_t ID = 58;
            GpsSolutionLlaRegister Register;
            GpsSolutionLla(){
                memset(&Register, 0, sizeof(Register));
            }
        };

        typedef struct YawPitchRollTrueBodyAccelerationAndAngularRates{
            static constexpr uint16_t ID = 58;
            YawPitchRollTrueBodyAccelerationAndAngularRatesRegister Register;
            YawPitchRollTrueBodyAccelerationAndAngularRates(){
                memset(&Register, 0, sizeof(Register));
            }
        };

        typedef struct MagneticAccelerationAndAngularRates{
            static constexpr uint16_t ID = 58;
            MagneticAccelerationAndAngularRatesRegister Register;
            MagneticAccelerationAndAngularRates(){
                memset(&Register, 0, sizeof(Register));
            }
        };
    }
}

#endif /* _FRAMES_H_  */