THE POSSIBLE FORMAT OF C/C++ FUNCTIONS FOR COMMUNICATIONS IN SCT 1. THE DEFINITIONS Item - the node or unit for access in the Detector tree, or in the Data Base, or in the hardware device/channel. Name - identification of Item in the form of the text string. The Name has a hierarchical structure and consist of the linear set of subNames; for instance: “SCT.Barrel.Layer03.Loop02.Stave01.ModlTemp04” subName - the local name on some hierarchical level; a subName may have the numerical index (see above). Every subName should be standard (the list of standard subNames should be created for ATLAS SCT). Stat - State and Status (error code) of Item (i.e. Control Status Register – CSR of device/channel). Array - a linear block of Data for Send/Take. Type - the standard type of Array index (in the text form): - “Number”, serial number in linear structure; - “Scan” , number of monitoring or testing Scan in the Run; - “Time” , time in some units (say, in seconds) etc. From - start index. Upto - stop index (? option: Leng – the length of Data). Para - Parameter (option). 2. THE LIST OF FUNCTIONS Comments: int SCT_OpenLink( char *Name, - Name of Item to link (option) int *Para); - pointer to Parameter (or NULL) int SCT_OpenItem( char *Name, - Name of Item to open int *Para); - pointer to Parameter (or NULL) int SCT_SendStat( char *Name, - Name of Item to send State uint *Stat); - State & Status of Item int SCT_TakeStat( char *Name, - Name of Item to take State uint *Stat); - State & Status of Item int SCT_SendData( char *Name, - Name of Item to send Data array char *Type, - Array index type (Scan, Time...) uint From, - start unit of array uint Upto, - stop unit of array float *Data); - Pointer to the 1-st Data int SCT_TakeData( char *Name, - Name of Item to take Data array char *Type, - Array index type (Scan, Time...) uint From, - start unit of array uint Upto, - stop unit of array float *Data); - Pointer to the 1-st Data int SCT_CloseItem(char *Name, - Name of Item to close int *Para); - pointer to Parameter (or NULL) int SCT_CloseLink(char *Name, - Name of Item to link (option) int *Para); - pointer to Parameter (or NULL) All the Functions return zero or the error code. The error code should have the standard hierarchical structure (in according with Name hierarchy), the standard error list should be created. 3. THE BROADCAST ACCESS ON SOME LEVEL ANS LEVEL(s) SKIPPING 3.1. The broadcast access (on some hierarchical level) may be done - to all the Items of the same type (of the same subName); - to all the Items of its level. In the first case the “non-exist” subName index may be used (in SCT DCS it is “100” because on the any level the number of real Items is less than 100). For the broadcast access to all the Items of some level the standard subName “toALL” may be used. 3.2. Sometimes it is necessary to skip some levels in the Item Name. In this case the special empty-name “NoNN” may be used, where NN is the level number. S.G.Basiladze basilad@mail.cern.ch