📄 accesscontrol.c
字号:
/* Program generated by SDT Cadvanced 3.6.0 */
#define XSCT_CADVANCED
#define SCT_VERSION_3_6
#include "scttypes.h"
#include "accesslibrary.h"
#ifdef XINCLUDE_HS_FILE
#include "accesscontrol.hs"
#endif
XSYSTEMVARS
#ifdef XCTRACE
static char xFileName[] = "D:\\TelelogicTau36\\examples\\courseenv\\simccode\\ACCESS\\accesscontrol.c";
#endif
/*************************************************************************
** SECTION Types and Forward references **
*************************************************************************/
/*****
* SYSTEM AccessControl
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\AccessControl.ssy,4,1)
******/
extern XCONST struct xSystemIdStruct ySysR_z_AccessControl;
/*****
* SYNONYM DOORTIMEOUT
* <<SYSTEM AccessControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\AccessControl.ssy(Definitions),566(20,45),1,9)
******/
#define zF_DOORTIMEOUT SDL_DURATION_LIT(10.0, 10, 0)
#ifdef XUSESYNONYMIDNODES
extern XCONST struct xSynonymIdStruct ySynR_zF_DOORTIMEOUT;
#endif
/*****
* SYNONYM ALLOCTIMEOUT
* <<SYSTEM AccessControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\AccessControl.ssy(Definitions),566(20,45),2,9)
******/
#define zG_ALLOCTIMEOUT SDL_DURATION_LIT(10.0, 10, 0)
#ifdef XUSESYNONYMIDNODES
extern XCONST struct xSynonymIdStruct ySynR_zG_ALLOCTIMEOUT;
#endif
/*****
* SYNONYM CENTRALTIMEOUT
* <<SYSTEM AccessControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\AccessControl.ssy(Definitions),566(20,45),3,9)
******/
#define zH_CENTRALTIMEOUT SDL_DURATION_LIT(10.0, 10, 0)
#ifdef XUSESYNONYMIDNODES
extern XCONST struct xSynonymIdStruct ySynR_zH_CENTRALTIMEOUT;
#endif
/*****
* SYNONYM CODETIMEOUT
* <<SYSTEM AccessControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\AccessControl.ssy(Definitions),566(20,45),4,9)
******/
#define zI_CODETIMEOUT SDL_DURATION_LIT(60.0, 60, 0)
#ifdef XUSESYNONYMIDNODES
extern XCONST struct xSynonymIdStruct ySynR_zI_CODETIMEOUT;
#endif
/*****
* BLOCK LocalStation
* <<SYSTEM AccessControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\LocalStation.sbk,4,1)
******/
extern XCONST struct xBlockIdStruct yBloR_z0_LocalStation;
/*****
* SUBSTRUCTURE LocalStation
* <<SYSTEM AccessControl/BLOCK LocalStation>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\LocalStation.sbk,4,1)
******/
extern XCONST struct xBlockSubstIdStruct yBSuR_z00_LocalStation;
/*****
* BLOCK DoorControl
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorControl.sbk,4,1)
******/
extern XCONST struct xBlockIdStruct yBloR_z000_DoorControl;
/*****
* PROCESS DoorController
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr,1,1)
******/
extern XCONST XSIGTYPE yPrsS_z0002_DoorController[];
extern XCONST xStateIdNode yPrsT_z0002_DoorController[];
extern XCONST struct xPrsIdStruct yPrsR_z0002_DoorController;
#define yPrsN_z0002_DoorController (&yPrsR_z0002_DoorController)
#ifdef XCOVERAGE
extern long int yPrsC_z0002_DoorController[];
#endif
YPAD_PROTOTYPE(yPAD_z0002_DoorController)
#ifndef XNOSTARTUPIDNODE
extern XCONST struct xSignalIdStruct ySigR_z0002_DoorController;
#define ySigN_z0002_DoorController (&ySigR_z0002_DoorController)
#endif
typedef struct {
SIGNAL_VARS
STARTUP_VARS
/* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr,1,2,3) */
z_AccessLibrary_H_DoorNoType Param1;
} yPDef_z0002_DoorController;
typedef yPDef_z0002_DoorController *yPDP_z0002_DoorController;
XPROCESSDEF_H(DoorController,"DoorController",z0002_DoorController, \
yPAD_z0002_DoorController,yVDef_z0002_DoorController)
#ifndef XOPTCHAN
extern XCONST xIdNode yPrsO_z0002_DoorController[];
#endif
#ifdef XBREAKBEFORE
#define ySym_z0002_DoorController 9
extern char * yRef_z0002_DoorController XPP((int, xSymbolType *));
#endif
typedef struct {
PROCESS_VARS
/* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr,1,2,3) */
z_AccessLibrary_H_DoorNoType z00020_DoorNo;
/* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr(1),161(85,15),2,3) */
DEF_TIMER_VAR(yTim_DoorTimer)
} yVDef_z0002_DoorController;
typedef yVDef_z0002_DoorController *yVDP_z0002_DoorController;
extern void yFree_z0002_DoorController XPP((void *));
/*****
* FPAR DoorNo
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl/PROCESS DoorController>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr,1,2,3)
******/
#ifndef XOPTFPAR
extern XCONST struct xVarIdStruct yVarR_z00020_DoorNo;
#endif
/*****
* STATE WaitOpenDoor
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl/PROCESS DoorController>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr(1),128(55,35),1,1)
******/
#define z00021_WaitOpenDoor 1
extern XCONST struct xStateIdStruct yStaR_z00021_WaitOpenDoor;
#define yStaN_z00021_WaitOpenDoor (&yStaR_z00021_WaitOpenDoor)
/*****
* STATE Wait
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl/PROCESS DoorController>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr(1),188(95,35),1,1)
******/
#define z00022_Wait 2
extern XCONST struct xStateIdStruct yStaR_z00022_Wait;
#define yStaN_z00022_Wait (&yStaR_z00022_Wait)
/*****
* TIMER DoorTimer
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl/PROCESS DoorController>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorController.spr(1),161(85,15),2,3)
******/
#ifndef XNOSIGNALIDNODE
extern XCONST struct xSignalIdStruct ySigR_z00023_DoorTimer;
#define ySigN_z00023_DoorTimer (&ySigR_z00023_DoorTimer)
#endif
/*****
* PROCESS DoorMonitor
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorMonitor.spr,4,1)
******/
extern XCONST XSIGTYPE yPrsS_z0003_DoorMonitor[];
extern XCONST xStateIdNode yPrsT_z0003_DoorMonitor[];
extern XCONST struct xPrsIdStruct yPrsR_z0003_DoorMonitor;
#define yPrsN_z0003_DoorMonitor (&yPrsR_z0003_DoorMonitor)
#ifdef XCOVERAGE
extern long int yPrsC_z0003_DoorMonitor[];
#endif
YPAD_PROTOTYPE(yPAD_z0003_DoorMonitor)
#ifndef XNOSTARTUPIDNODE
extern XCONST struct xSignalIdStruct ySigR_z0003_DoorMonitor;
#define ySigN_z0003_DoorMonitor (&ySigR_z0003_DoorMonitor)
#endif
typedef struct {
SIGNAL_VARS
STARTUP_VARS
} yPDef_z0003_DoorMonitor;
typedef yPDef_z0003_DoorMonitor *yPDP_z0003_DoorMonitor;
XPROCESSDEF_H(DoorMonitor,"DoorMonitor",z0003_DoorMonitor, \
yPAD_z0003_DoorMonitor,yVDef_z0003_DoorMonitor)
#ifndef XOPTCHAN
extern XCONST xIdNode yPrsO_z0003_DoorMonitor[];
#endif
#ifdef XBREAKBEFORE
#define ySym_z0003_DoorMonitor 8
extern char * yRef_z0003_DoorMonitor XPP((int, xSymbolType *));
#endif
typedef struct {
PROCESS_VARS
/* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorMonitor.spr(1),116(80,25),2,3) */
z_AccessLibrary_H_DoorNoType z00031_DoorNo;
} yVDef_z0003_DoorMonitor;
typedef yVDef_z0003_DoorMonitor *yVDP_z0003_DoorMonitor;
extern void yFree_z0003_DoorMonitor XPP((void *));
/*****
* STATE WaitAllocate
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl/PROCESS DoorMonitor>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorMonitor.spr(1),122(30,40),1,1)
******/
#define z00030_WaitAllocate 1
extern XCONST struct xStateIdStruct yStaR_z00030_WaitAllocate;
#define yStaN_z00030_WaitAllocate (&yStaR_z00030_WaitAllocate)
/*****
* DCL DoorNo
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl/PROCESS DoorMonitor>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorMonitor.spr(1),116(80,25),2,3)
******/
#ifndef XOPTDCL
extern XCONST struct xVarIdStruct yVarR_z00031_DoorNo;
#endif
/*****
* SIGNALROUTE DCtoE
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorControl.sbk(1),128(25,47),1,1)
******/
#ifndef XOPTCHAN
extern XCONST xIdNode yChaO_z0004_DCtoE[];
extern XCONST xIdNode yChaOR_z0004_DCtoE[];
extern XCONST struct xChannelIdStruct yChaR_z0004_DCtoE;
extern XCONST struct xChannelIdStruct yChaRR_z0004_DCtoE;
#define yChaN_z0004_DCtoE (&yChaR_z0004_DCtoE)
#endif
/*****
* SIGNALROUTE DCtotC
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorControl.sbk(1),131(116,47),1,1)
******/
#ifndef XOPTCHAN
extern XCONST xIdNode yChaO_z0005_DCtotC[];
extern XCONST xIdNode yChaOR_z0005_DCtotC[];
extern XCONST struct xChannelIdStruct yChaR_z0005_DCtotC;
extern XCONST struct xChannelIdStruct yChaRR_z0005_DCtotC;
#define yChaN_z0005_DCtotC (&yChaR_z0005_DCtotC)
#endif
/*****
* SIGNALROUTE DMtotC
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK DoorControl>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\DoorControl.sbk(1),269(131,87),1,1)
******/
#ifndef XOPTCHAN
extern XCONST xIdNode yChaO_z0006_DMtotC[];
extern XCONST xIdNode yChaOR_z0006_DMtotC[];
extern XCONST struct xChannelIdStruct yChaR_z0006_DMtotC;
extern XCONST struct xChannelIdStruct yChaRR_z0006_DMtotC;
#define yChaN_z0006_DMtotC (&yChaR_z0006_DMtotC)
#endif
/*****
* BLOCK Control
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\Control.sbk,4,1)
******/
extern XCONST struct xBlockIdStruct yBloR_z001_Control;
/*****
* NEWTYPE DoorBaseType (TYPE section)
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK Control/PROCESS Controller>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\Controller.spr(Declarations),353(15,30),1,9)
******/
typedef struct {
SDL_PId A[SDL_INTEGER_LIT(4) - SDL_INTEGER_LIT(1)+1];
} z00131_DoorBaseType;
#ifndef XOPTSORT
extern XCONST struct xSortIdStruct ySrtR_z00131_DoorBaseType;
#define ySrtN_z00131_DoorBaseType (&ySrtR_z00131_DoorBaseType)
#endif
/*****
* NEWTYPE DoorBaseType (HEADING section)
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK Control/PROCESS Controller>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\Controller.spr(Declarations),353(15,30),1,9)
******/
\
#define yAssF_z00131_DoorBaseType(V,E,A) V = E
extern void yDef_z00131_DoorBaseType XPP((z00131_DoorBaseType *));
extern SDL_Boolean yEq_z00131_DoorBaseType XPP((z00131_DoorBaseType,
z00131_DoorBaseType));
#define yEqF_z00131_DoorBaseType(Expr1,Expr2) yEq_z00131_DoorBaseType(Expr1,Expr2)
#define yNEqF_z00131_DoorBaseType(Expr1,Expr2) ( ! yEq_z00131_DoorBaseType(Expr1,Expr2) )
extern z00131_DoorBaseType yMake_z00131_DoorBaseType XPP((SDL_PId));
#ifndef ANY_z00131_DoorBaseType
#define ANY_z00131_DoorBaseType yMake_z00131_DoorBaseType(ANY_SDL_PId)
#endif
#define z001316_copy(P) P
/*****
* PROCESS Controller
* <<SYSTEM AccessControl/BLOCK LocalStation/SUBSTRUCTURE LocalStation
* /BLOCK Control>>
* #SDTREF(SDL,D:\TelelogicTau36\examples\courseenv\simccode\ACCESS\Controller.spr,4,1)
******/
extern XCONST XSIGTYPE yPrsS_z0013_Controller[];
extern XCONST xStateIdNode yPrsT_z0013_Controller[];
extern XCONST struct xPrsIdStruct yPrsR_z0013_Controller;
#define yPrsN_z0013_Controller (&yPrsR_z0013_Controller)
#ifdef XCOVERAGE
extern long int yPrsC_z0013_Controller[];
#endif
YPAD_PROTOTYPE(yPAD_z0013_Controller)
#ifndef XNOSTARTUPIDNODE
extern XCONST struct xSignalIdStruct ySigR_z0013_Controller;
#define ySigN_z0013_Controller (&ySigR_z0013_Controller)
#endif
typedef struct {
SIGNAL_VARS
STARTUP_VARS
} yPDef_z0013_Controller;
typedef yPDef_z0013_Controller *yPDP_z0013_Controller;
XPROCESSDEF_H(Controller,"Controller",z0013_Controller,yPAD_z0013_Controller, \
yVDef_z0013_Controller)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -