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

#ifndef DetectarObstaculo_H
#define DetectarObstaculo_H

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

#include <RTSystem/DetectarObstaculoComponent.h>
class LerSonarEsquerdo;

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

extern const RTActorClass DetectarObstaculo;

#define SUPER RTActor
class DetectarObstaculo_Actor : public RTActor
{
public:
	DetectarObstaculo_Actor( RTController * rtg_rts, RTActorRef * rtg_ref );
	virtual ~DetectarObstaculo_Actor( void );

protected:
	// {{{RME classifier 'Logical View::DetectarObstaculo' operation 'RecebeDadosSensores()'
	void RecebeDadosSensores( void );
	// }}}RME
	// {{{RME classifier 'Logical View::DetectarObstaculo' operation 'EnviaDadosNavegacao()'
	void EnviaDadosNavegacao( void );
	// }}}RME

private:
	INLINE_CHAINS void chain1_Initial( void );

public:
	virtual void rtsBehavior( int signalIndex, int portIndex );
	virtual const RTActor_class * getActorData( void ) const;

protected:
	static const RTActor_class rtg_class;

public:
	static const RTStateId rtg_parent_state[];
};
#undef SUPER

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

#endif /* DetectarObstaculo_H */

// }}}RME
