/*
 * speedgoat_test_SN10564_R2024a_private.h
 *
 * Academic License - for use in teaching, academic research, and meeting
 * course requirements at degree granting institutions only.  Not for
 * government, commercial, or other organizational use.
 *
 * Code generation for model "speedgoat_test_SN10564_R2024a".
 *
 * Model version              : 1.3
 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023
 * C++ source code generated on : Thu Nov  7 11:28:20 2024
 *
 * Target selection: speedgoat.tlc
 * Note: GRT includes extra infrastructure and instrumentation for prototyping
 * Embedded hardware selection: Intel->x86-64 (Linux 64)
 * Code generation objectives: Unspecified
 * Validation result: Not run
 */

#ifndef speedgoat_test_SN10564_R2024a_private_h_
#define speedgoat_test_SN10564_R2024a_private_h_
#include "rtwtypes.h"
#include "multiword_types.h"
#include "speedgoat_test_SN10564_R2024a_types.h"
#include "speedgoat_test_SN10564_R2024a.h"

/* Private macros used by the generated code to access rtModel */
#ifndef rtmSetTFinal
#define rtmSetTFinal(rtm, val)         ((rtm)->Timing.tFinal = (val))
#endif

#ifndef rtmSetTPtr
#define rtmSetTPtr(rtm, val)           ((rtm)->Timing.t = (val))
#endif

struct {
  void *context;
  uint32_T IRQ;
  struct sigevent sig_none;
  struct sigevent sig_pulse;
  uint32_T coid;
  uint32_T pri;
  uint32_T count;
  uint32_T intrID;
} S4_InterruptSetup1_D;

// Define a static error message buffer for this instance
static char S4_InterruptSetup1_errmsg[256];

//
extern "C"
{
  void IO397_50k_start_public( void *, bool );
  void IO397_50k_stop_public( void * );
  bool IO397_50k_isr_public( void * );
  int32_T IO397_50k_map_public( void **, uint32_T );
}

//
const struct sigevent *S4_InterruptSetup1_ISR(void *data, int id);
extern void* slrtRegisterSignalToLoggingService(uintptr_t sigAddr);
extern int32_T div_s32(int32_T numerator, int32_T denominator);
extern "C" void sg_fpga_inta_sf_a1(SimStruct *rts);
extern "C" void sg_fpga_di_sf_a2(SimStruct *rts);
extern "C" void sg_fpga_do_sf_a2(SimStruct *rts);
extern "C" void sg_fpga_IO397_ad(SimStruct *rts);
extern "C" void sg_fpga_IO397_da(SimStruct *rts);

#endif                            /* speedgoat_test_SN10564_R2024a_private_h_ */
