/*
 * Generated by erpcgen 1.14.0 on Tue Apr 28 12:16:37 2026.
 *
 * AUTOGENERATED - DO NOT EDIT
 */


#if !defined(_file_service_server_hpp_)
#define _file_service_server_hpp_

#include "file_service_interface.hpp"

#include "erpc_server.hpp"
#include "erpc_codec.hpp"

#if 11400 != ERPC_VERSION_NUMBER
#error "The generated shim code version is different to the rest of eRPC code."
#endif


namespace erpcShim
{

/*!
 * @brief Service subclass for file_service.
 */
class file_service_service : public erpc::Service
{
public:
    file_service_service(file_service_interface *_file_service_interface);

    virtual ~file_service_service();

    /*! @brief return service interface handler. */
    file_service_interface* getHandler(void);

    /*! @brief Call the correct server shim based on method unique ID. */
    virtual erpc_status_t handleInvocation(uint32_t methodId, uint32_t sequence, erpc::Codec * codec, erpc::MessageBufferFactory *messageFactory, erpc::Transport * transport);

private:
    file_service_interface *m_handler;
    /*! @brief Server shim for fileWriteBegin of file_service interface. */
    erpc_status_t fileWriteBegin_shim(erpc::Codec * codec, erpc::MessageBufferFactory *messageFactory, erpc::Transport * transport, uint32_t sequence);

    /*! @brief Server shim for fileWriteChunk of file_service interface. */
    erpc_status_t fileWriteChunk_shim(erpc::Codec * codec, erpc::MessageBufferFactory *messageFactory, erpc::Transport * transport, uint32_t sequence);

    /*! @brief Server shim for fileWriteEnd of file_service interface. */
    erpc_status_t fileWriteEnd_shim(erpc::Codec * codec, erpc::MessageBufferFactory *messageFactory, erpc::Transport * transport, uint32_t sequence);

    /*! @brief Server shim for fileWriteAbort of file_service interface. */
    erpc_status_t fileWriteAbort_shim(erpc::Codec * codec, erpc::MessageBufferFactory *messageFactory, erpc::Transport * transport, uint32_t sequence);
};

} // erpcShim


#endif // _file_service_server_hpp_
