//!;;Rpy::+
//!;;Rpy::Model Element : idd_nav_types
//!;;Rpy::
//!;;Rpy::Component : IDDComponent 
//!;;Rpy::Configuration : IDDConfig
//!;;Rpy::Project : IDD
//!;;Rpy::
//!;;Rpy::File Path : idd_nav_types.h
//!;;Rpy::Tag : $Tag
//!;;Rpy::
//!;;Rpy::Copyright : Leonardocompany - COMPANY RESTRICTED
//!;;Rpy::
//!;;Rpy::Generated by Rhapsody	: 7.5.3 
//!;;Rpy::-


#ifndef idd_nav_types_H
#define idd_nav_types_H

//## dependency idd_base_types
#include "idd_base_types.h"
namespace iddheader
{
    //## package iddheader::idd_nav_types
    
    
    //#[ type nav_attitude_t
    struct nav_attitude_t
    { 
    	float true_heading_rad; //was simple "heading_rad"
    	float pitch_rad;
    	float roll_rad;
    	
        float platfrom_azimuth_rad;
    	float magnetic_heading_rad;	
    };
    //#]
    
    //#[ type nav_attitude_rate_t
    struct nav_attitude_rate_t
    {
    	float heading_rad_sec;
    	float pitch_rad_sec;
    	float roll_rad_sec;
    };
    //#]
    
    //#[ type nav_geo_pos_t
    struct nav_geo_pos_t
    {
    	float lat_rad;
    	float lon_rad;
    	float altitude_m;
    };
    //#]
    
    //#[ type nav_speed_t
    struct nav_speed_t
    {         
        //INU navigation frame
    	float vx;
    	float vy;
    	float vz;
    	float vx_ground;
    };
    //#]
    
    //#[ type nav_acceleration_t
    struct nav_acceleration_t
    { 
    	float vx_m_s2;
    	float vy_m_s2;
    	float vz_m_s2;
    }; 
    //#]
    
    //#[ type navigation_t
    struct navigation_t
    {
    	iddtypes::timetag_t time_tag;
    	nav_attitude_t attitude;
    	nav_attitude_rate_t attitude_rate;
    	nav_geo_pos_t geo_pos;
    	nav_speed_t speed;
    	nav_acceleration_t acceleration;
    };
    
    //#]
}

#endif
//;;Rpy:: end


