fprime/Autocoders/Python/templates/ExampleComponentImpl.hpp

43 lines
1.5 KiB
C++

/*
* ExampleComponentImpl.hpp
*
* Created on: Nov 3, 2014
* Author: tcanham
*/
#ifndef EXAMPLECOMPONENTIMPL_HPP_
#define EXAMPLECOMPONENTIMPL_HPP_
#include <Autocoders/templates/ExampleComponentAc.hpp>
namespace ExampleComponents {
class ExampleComponentImpl: public ExampleComponentBase {
public:
#if FW_OBJECT_NAMES == 1
ExampleComponentImpl(const char* name);
#else
ExampleComponentImpl();
#endif
void init(NATIVE_INT_TYPE queueDepth, NATIVE_INT_TYPE instance = 0);
virtual ~ExampleComponentImpl();
protected:
private:
void exampleInput_handler(NATIVE_INT_TYPE portNum, I32 arg1, ANameSpace::mytype arg2, U8 arg3, Example3::ExampleSerializable arg4, AnotherExample::SomeEnum arg5);
SomeOtherNamespace::AnotherEnum anotherInput_handler(NATIVE_INT_TYPE portNum, I32 arg1, F64 arg2, SomeOtherNamespace::SomeEnum arg3);
void TEST_CMD_1_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, I32 arg1, ExampleComponentBase::CmdEnum arg2, const Fw::CmdStringArg& arg3);
void TEST_CMD_2_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, I32 arg1, F32 arg2);
// interfaces
void test_internalInterfaceHandler(I32 arg1, F32 arg2, U8 arg3);
void test2_internalInterfaceHandler(I32 arg1, SomeEnum arg2, const Fw::InternalInterfaceString& arg3, Example4::Example2& arg4);
void parameterUpdated(FwPrmIdType id);
};
} /* namespace ExampleComponents */
#endif /* EXAMPLECOMPONENTIMPL_HPP_ */