/*
 * Copyright 2018,2023 NXP
 * All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

/*
 * Generated by erpcgen 1.14.0 on Wed May 28 10:34:55 2025.
 *
 * AUTOGENERATED - DO NOT EDIT
 */


#if !defined(_c_erpc_two_way_rpc_Core0Interface_server_h_)
#define _c_erpc_two_way_rpc_Core0Interface_server_h_

#include "erpc_two_way_rpc_Core0Interface_common.h"

#if defined(__cplusplus)
extern "C"
{
#endif

typedef void * erpc_service_t;

#if !defined(ERPC_FUNCTIONS_DEFINITIONS_CORE0INTERFACE)
#define ERPC_FUNCTIONS_DEFINITIONS_CORE0INTERFACE

typedef void (*getNumberCallback_t)(uint32_t * param1);

/*! @brief Core0Interface identifiers */
enum _Core0Interface_ids
{
    kCore0Interface_service_id = 1,
    kCore0Interface_setGetNumberFunction_id = 1,
    kCore0Interface_getGetNumberFunction_id = 2,
    kCore0Interface_nestedCallGetNumber_id = 3,
    kCore0Interface_getNumberFromCore1_id = 4,
};

/*! Core0 interface */
//! @name Core0Interface
//@{
/*! Sets callback function. To the other side. Implementation on Core1  */
void setGetNumberFunction(const getNumberCallback_t getNumberCallbackParam);

/*! Gets callback function. Implementation on Core1  */
void getGetNumberFunction(getNumberCallback_t * getNumberCallbackParam);

/*! Sets callback function. To the other side. Implementation on Core1  */
void nestedCallGetNumber(const getNumberCallback_t getNumberCallbackParam);

/*! Callback function. Implementation on Core1 */
void getNumberFromCore1(uint32_t * number);
//@}


#endif // ERPC_FUNCTIONS_DEFINITIONS_CORE0INTERFACE

/*! @brief Return Core0Interface_service service object. */
erpc_service_t create_Core0Interface_service(void);

/*! @brief Destroy Core0Interface_service service object. */
void destroy_Core0Interface_service(erpc_service_t service);


#if defined(__cplusplus)
}
#endif

#endif // _c_erpc_two_way_rpc_Core0Interface_server_h_
