// {{{RME classifier 'Logical View::Navegacao'

#ifndef Navegacao_H
#define Navegacao_H

#ifdef PRAGMA
#pragma interface "Navegacao.h"
#endif

#include <RTSystem/SolicitarPacotesComponent.h>

// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'HeaderPreface'
// {{{USR tool 'OT::Cpp' property 'HeaderPreface'
// }}}USR
// }}}RME

extern const RTObject_class RTType_Navegacao;

class Navegacao
{
public:
	// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'PublicDeclarations'
	// {{{USR tool 'OT::Cpp' property 'PublicDeclarations'
	// }}}USR
	// }}}RME

protected:
	// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'ProtectedDeclarations'
	// {{{USR tool 'OT::Cpp' property 'ProtectedDeclarations'
	// }}}USR
	// }}}RME

private:
	// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'PrivateDeclarations'
	// {{{USR tool 'OT::Cpp' property 'PrivateDeclarations'
	// }}}USR
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'ForaRumo'
	bool ForaRumo;
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'DesviarObstaculo'
	bool DesviarObstaculo;
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'DeltaDesvio'
	int DeltaDesvio;
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'Missao'
	float Missao;
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'Destino'
	bool Destino;
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'LocPacote'
	float LocPacote;
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'LocPorta'
	float LocPorta;
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' classAttribute 'IDPacote'
	double IDPacote;
	// }}}RME

public:
	// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'GenerateDefaultConstructor'
	Navegacao( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'GenerateDestructor'
	virtual ~Navegacao( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'GenerateCopyConstructor'
	Navegacao( const Navegacao & rtg_arg );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'GenerateAssignmentOperator'
	Navegacao & operator=( const Navegacao & rtg_arg );
	// }}}RME

protected:
	// {{{RME classifier 'Logical View::Navegacao' operation 'Desviar()'
	void Desviar( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' operation 'Corrigir()'
	void Corrigir( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' operation 'Retornar()'
	void Retornar( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' operation 'Conduzir()'
	void Conduzir( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' operation 'ComProblema()'
	void ComProblema( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' operation 'ComDestinoAlocado()'
	void ComDestinoAlocado( void );
	// }}}RME
	// {{{RME classifier 'Logical View::Navegacao' operation 'ProximaMissao()'
	void ProximaMissao( void );
	// }}}RME

public:
	static const RTFieldDescriptor rtg_Navegacao_fields[];
};

struct RTTypedValue_Navegacao
{
	const void * data;
	const RTObject_class * type;
	inline RTTypedValue_Navegacao( const Navegacao & rtg_value )
		: data( &rtg_value ), type( &RTType_Navegacao )
	{
	}
	inline RTTypedValue_Navegacao( const Navegacao & rtg_value, const RTObject_class * rtg_type )
		: data( &rtg_value ), type( rtg_type )
	{
	}
	inline ~RTTypedValue_Navegacao( void )
	{
	}
};

// {{{RME classifier 'Logical View::Navegacao' tool 'OT::Cpp' property 'HeaderEnding'
// {{{USR tool 'OT::Cpp' property 'HeaderEnding'
// }}}USR
// }}}RME

#endif /* Navegacao_H */

// }}}RME
