/* * This is a part of PolyORB-HI-C distribution, a minimal * middleware written for generated code from AADL models. * You should use it with the Ocarina toolsuite. * * For more informations, please visit http://taste.tuxfamily.org/wiki * * Copyright (C) 2014 ESA & ISAE. */ #ifndef _INC_SPACEWIRE_H #define _INC_SPACEWIRE_H /* Code automatically generated by asn1scc tool Date was: 2/7/2012 Time was: 15:35:36 */ #include "asn1crt.h" #ifdef __cplusplus extern "C" { #endif typedef asn1SccSint __po_hi_c_Core_Frequence_T; #define __po_hi_c_Core_Frequence_T_REQUIRED_BYTES_FOR_ENCODING 4 #define __po_hi_c_Core_Frequence_T_REQUIRED_BITS_FOR_ENCODING 32 #define __po_hi_c_Core_Frequence_T_REQUIRED_BYTES_FOR_ACN_ENCODING 4 #define __po_hi_c_Core_Frequence_T_REQUIRED_BITS_FOR_ACN_ENCODING 32 #define __po_hi_c_Core_Frequence_T_REQUIRED_BYTES_FOR_XER_ENCODING 57 #ifndef ERR___po_hi_c_Core_Frequence_T #define ERR___po_hi_c_Core_Frequence_T 1000 /* (0..4294967295) */ #endif void __po_hi_c_Core_Frequence_T_Initialize(__po_hi_c_Core_Frequence_T* pVal); flag __po_hi_c_Core_Frequence_T_IsConstraintValid(const __po_hi_c_Core_Frequence_T* val, int* pErrCode); typedef asn1SccSint __po_hi_c_Node_Addr_T; #define __po_hi_c_Node_Addr_T_REQUIRED_BYTES_FOR_ENCODING 1 #define __po_hi_c_Node_Addr_T_REQUIRED_BITS_FOR_ENCODING 8 #define __po_hi_c_Node_Addr_T_REQUIRED_BYTES_FOR_ACN_ENCODING 1 #define __po_hi_c_Node_Addr_T_REQUIRED_BITS_FOR_ACN_ENCODING 8 #define __po_hi_c_Node_Addr_T_REQUIRED_BYTES_FOR_XER_ENCODING 47 #ifndef ERR___po_hi_c_Node_Addr_T #define ERR___po_hi_c_Node_Addr_T 1001 /* (0..255) */ #endif void __po_hi_c_Node_Addr_T_Initialize(__po_hi_c_Node_Addr_T* pVal); flag __po_hi_c_Node_Addr_T_IsConstraintValid(const __po_hi_c_Node_Addr_T* val, int* pErrCode); typedef asn1SccSint __po_hi_c_Clock_Division_T; #define __po_hi_c_Clock_Division_T_REQUIRED_BYTES_FOR_ENCODING 1 #define __po_hi_c_Clock_Division_T_REQUIRED_BITS_FOR_ENCODING 8 #define __po_hi_c_Clock_Division_T_REQUIRED_BYTES_FOR_ACN_ENCODING 1 #define __po_hi_c_Clock_Division_T_REQUIRED_BITS_FOR_ACN_ENCODING 8 #define __po_hi_c_Clock_Division_T_REQUIRED_BYTES_FOR_XER_ENCODING 57 #ifndef ERR___po_hi_c_Clock_Division_T #define ERR___po_hi_c_Clock_Division_T 1002 /* (0..255) */ #endif void __po_hi_c_Clock_Division_T_Initialize(__po_hi_c_Clock_Division_T* pVal); flag __po_hi_c_Clock_Division_T_IsConstraintValid(const __po_hi_c_Clock_Division_T* val, int* pErrCode); typedef struct { char devname[21]; __po_hi_c_Node_Addr_T nodeaddr; __po_hi_c_Core_Frequence_T corefreq; __po_hi_c_Clock_Division_T clockdiv; flag use_router; flag remove_prot_id; flag rxblock; flag txblock; struct { unsigned int corefreq:1; unsigned int clockdiv:1; unsigned int use_router:1; unsigned int remove_prot_id:1; unsigned int rxblock:1; unsigned int txblock:1; } exist; } __po_hi_c_spacewire_conf_t; #define __po_hi_c_spacewire_conf_t_REQUIRED_BYTES_FOR_ENCODING 26 #define __po_hi_c_spacewire_conf_t_REQUIRED_BITS_FOR_ENCODING 203 #define __po_hi_c_spacewire_conf_t_REQUIRED_BYTES_FOR_ACN_ENCODING 28 #define __po_hi_c_spacewire_conf_t_REQUIRED_BITS_FOR_ACN_ENCODING 223 #define __po_hi_c_spacewire_conf_t_REQUIRED_BYTES_FOR_XER_ENCODING 347 #ifndef ERR___po_hi_c_spacewire_conf_t_devname #define ERR___po_hi_c_spacewire_conf_t_devname 1003 /* (SIZE (1..20)) */ #endif void __po_hi_c_spacewire_conf_t_Initialize(__po_hi_c_spacewire_conf_t* pVal); flag __po_hi_c_spacewire_conf_t_IsConstraintValid(const __po_hi_c_spacewire_conf_t* val, int* pErrCode); extern __po_hi_c_spacewire_conf_t leon_rasta_spw_sender; extern __po_hi_c_spacewire_conf_t leon_rasta_spw_receiver; #ifdef __cplusplus } #endif #endif