#ifndef __c4_double_new_moment_h__
#define __c4_double_new_moment_h__

/* Include files */
#include "sf_runtime/sfc_sf.h"
#include "sf_runtime/sfc_mex.h"
#include "rtwtypes.h"
#include "multiword_types.h"

/* Type Definitions */
#ifndef typedef_SFc4_double_new_momentInstanceStruct
#define typedef_SFc4_double_new_momentInstanceStruct

typedef struct {
  SimStruct *S;
  ChartInfoStruct chartInfo;
  uint32_T chartNumber;
  uint32_T instanceNumber;
  boolean_T c4_dataWrittenToVector[3];
  uint8_T c4_doSetSimStateSideEffects;
  const mxArray *c4_setSimStateSideEffectsInfo;
  int32_T *c4_sfEvent;
  boolean_T *c4_isStable;
  uint8_T *c4_is_active_c4_double_new_moment;
  uint8_T *c4_is_c4_double_new_moment;
  real_T *c4_stabFlag;
  real_T *c4_timeNow;
  real_T *c4_stabFlag2;
  real_T *c4_time;
  real_T *c4_timeWait;
  real_T *c4_timeStab;
  real_T *c4_timeWait2;
} SFc4_double_new_momentInstanceStruct;

#endif                                 /*typedef_SFc4_double_new_momentInstanceStruct*/

/* Named Constants */

/* Variable Declarations */
extern struct SfDebugInstanceStruct *sfGlobalDebugInstanceStruct;

/* Variable Definitions */

/* Function Declarations */
extern const mxArray *sf_c4_double_new_moment_get_eml_resolved_functions_info
  (void);

/* Function Definitions */
extern void sf_c4_double_new_moment_get_check_sum(mxArray *plhs[]);
extern void c4_double_new_moment_method_dispatcher(SimStruct *S, int_T method,
  void *data);

#endif
