00001
00002
00003 #ifndef _CIProxie_h_
00004 #define _CIProxie_h_
00005
00006 #if __GNUG__ >= 2
00007 # pragma interface
00008 #endif
00009
00010 #include "GetExt_common.h"
00011
00012
00013 #define RED 0
00014 #define GREEN 1
00015 #define YELLOW 2
00016
00017
00018 #define NONE 0
00019 #define METVERDE 1
00020 #define METFLUJO 2
00021 #define METDELAY 3
00022
00023 #define CtrlControlNotLoaded -1000
00024 #define CtrlUnknownSignal -2002
00025 #define CtrlUnknownState -2003
00026 #define CtrlUnknownPhase -2005
00027 #define CtrlUnknownJunction -2007
00028 #define CtrlUnknownMet -2008
00029 #define CtrlIncorrectTypeMet -2009
00030 #define CtrlJunctionNotControled -2010
00031 #define CtrlMetNotControled -2011
00032 #define CtrlNotExternalControl -2012
00033 #define CtrlSameIniTimeControl -2013
00034 #define CtrlRemovingCurrentControl -2014
00035 #define CtrlUnknownPhaseName -2015
00036
00037 int ECIGetNumberJunctions();
00038 int ECIGetJunctionId(int numelem);
00039 char *ECIGetJunctionName(int idJunction);
00040 int ECIGetNumberSignalGroups(int idJunction);
00041 char *ECIGetLogicalNameofSignalGroup(int ajunction, int asignalgroup);
00042
00043 int ECIGetCurrentPhase(int idJunction);
00044 int ECIGetNumberPhases(int idJunction);
00045 int ECIGetDurationsPhase(int idJunction,int idPhase,float timeSta,float *dur, float *max, float *min);
00046 int ECIGetYellowTime(int idJunction);
00047 int ECIGetOffset(int idJunction);
00048
00049
00050 int ECIDisableEvents(int idJunction);
00051 int ECIEnableEvents(int idJunction);
00052 int ECIChangeDirectPhase(int idJunction, int idPhase, float timeSta, float Time, float Ciclo);
00053 int ECIChangeTimingPhase(int idJunction, int idPhase, float newTime, float timeSta);
00054
00055 int ECIChangeSignalGroupState(int idJunction, int idSignalGroup, int aState, float timeSta, float Time, float Ciclo);
00056 int ECIGetCurrentStateofSignalGroup(int idJunction, int idSignalGroup);
00057
00058 int ECIChangeSignalGroupStatebyName(int idJunction, char *nameSignalGroup, int aState, float timeSta, float Time, float Ciclo);
00059 int ECIGetCurrentStateofSignalGroupbyName(int idJunction, char *nameSignalGroup);
00060
00061
00062 int ECIGetNumberMeterings();
00063 int ECIGetMeteringIdSection(int elem);
00064 char *ECIGetMeteringName(int idsection);
00065 int ECIGetMeteringId(int idsection);
00066 int ECIGetTypeMetering(int idsection);
00067 int ECIGetParametersGreenMetering(int idsection, float timeSta, float *amax, float *greenTime, float *amin,float *cicleTime, float *offset, float *yellowTime);
00068 int ECIChangeParametersGreenMetering(int idsection,float timeSta,float amax, float ngreenTime, float amin, float ncicleTime, float offset, float YellowTime);
00069
00070 int ECIGetParametersFlowMetering(int idsection, float timeSta, float *amax, float *flow, float *amin);
00071 int ECIChangeParametersFlowMetering(int idsection, float timeSta, float amax, float flow, float amin);
00072 int ECIGetParametersDelayMetering(int idsection, float timeSta, float *avg, float *dev);
00073 int ECIChangeParametersDelayMetering(int idsection, float timeSta, float newavg, float newdev);
00074 int ECIDisableEventsMetering(int idsection);
00075 int ECIEnableEventsMetering(int idsection);
00076 int ECIChangeStateMetering(int idsection, int aState, float timeSta, float Time, float Ciclo, int identity=0);
00077 int ECIGetCurrentStateofMetering(int idarc, int identity);
00078
00079 int ECIGetNumberofControls();
00080 char *ECIGetNameofControl(int elemControl);
00081 float ECIGetIniTimeofControl(int elemControl);
00082 float ECIGetOffsetofControl(int elemControl);
00083 char * ECIGetNameCurrentControl();
00084 int ECIGetNumberCurrentControl();
00085 int ECIAddNewControl(char *name, float initime);
00086 int ECIRemoveControl(int elemControl);
00087 int ECIRestoringInitialDurations();
00088
00089 int ECIGetNumberSem(int aIdArc, int aIdEnt, float timeSta);
00090 float ECIGetPositionSem(int aIdArc, int aIdEnt, int anumsem, float timeSta);
00091 int ECIGetStateSem(int aIdArc, int aIdEnt, int anumsem, float timeSta);
00092
00093
00094 #endif