TKernel is the TINE Kernel (singleton) class, whose static methods are used to manage the TINE engine. More...
Static Public Member Functions | |
static Int32 | AssignBufferSpace (UInt32 clnRcvBufferSpace, UInt32 srvRcvBufferSpace, UInt32 clnSndBufferSpace, UInt32 srvSndBufferSpace) |
Assigns specific buffer capacity for certain configurable TINE sockets. More... | |
static Int32 | AssignBufferSpace (UInt32 rcvBufferSpace, UInt32 sndBufferSpace) |
Assigns specific buffer capacity for certain configurable TINE sockets. More... | |
static Int32 | FecLog (string text) |
Appends the given text to the FEC process's log file. More... | |
static double | GetDataTimeStamp () |
Provides the last established data timestamp. More... | |
static Int32 | GetFecLogDepth () |
Retrieves the current setting for the maximum number of log entries in the FEC process's log file. More... | |
static String | GetHistoryFilesRepository () |
The current local history file repository More... | |
static String | GetHistoryStaticFilesRepository () |
The current static local history file repository Local history files located in this area will not be automatically removed by the local history system. More... | |
static Int32 | GetPortOffset (String fecName) |
Obtains the FEC port offset appropriate for the give FEC name. More... | |
static int | GetSystemDataStamp () |
Provides the last established system data stamp More... | |
static double | GetUtcNow () |
Returns the current UTC time (seconds since 1970) as a double (with fractional seconds). More... | |
static UInt32 | GetWorkAreaSize () |
Gets the server-side work area size which is coupled to the maximum transport size for supported by a single-threaded server. More... | |
static Int32 | InitializeServer () |
Initializes the TINE server engine. More... | |
static double | MakeDataTimeStamp () |
Makes a data timestamp according to the current system time. More... | |
static int | MakeSystemDataStamp () |
A server will automatically obtain and update the cannonical system data stamp for its context if a CYCLER is available for that context. The system data stamp logically represents a 'cycle number' or 'pulse number' which is used to systematically tag data objects. If no CYCLER exists, then the value for the system data stamp will always be = 0. This call is in parallel with MakeDataTimeStamp() and is nominally equivalent to GetSystemDataStamp. More... | |
static double | ParseTineTimeString (String value) |
Makes a UTC double from the give string input More... | |
static Int32 | RegisterDeviceName (String eqm, String devName, Int32 devNr) |
Assigns a device name to the specified device number. More... | |
static Int32 | RegisterFecInformation (String fecName, String defaultSubSystem, String defaultContext, String fecDescription, String fecLocation, String attachedHardware, String responsible) |
Assigns a FEC Name and descriptive information to the server process. With this call, the FEC's port offset will be determined by accessing the local manifest. More... | |
static Int32 | RegisterFecInformation (String fecName, String defaultSubSystem, String defaultContext, String fecDescription, String fecLocation, String attachedHardware, String responsible, UInt16 portOffset) |
Assigns a FEC Name and descriptive information to the server process. More... | |
static Int32 | RegisterPropertyInformation (String eqm, String prpName, TDataType dtOut, TDataType dtIn, UInt16 accessMode, UInt16 arrayType, UInt16 rowLength, String prpDescription, Int32 prpId, String redirectionTarget) |
Assigns pertinent information for the specified property. More... | |
static void | SetDataTimeStamp (double timestamp) |
Sets the intrinsic data timestamp to the value given. More... | |
static Int32 | SetDeviceDescription (String eqm, String devName, String description) |
Assigns a description to a registered device More... | |
static Int32 | SetDeviceLocation (String eqm, String devName, String location) |
Assigns a location to a registered device More... | |
static Int32 | SetDeviceMask (String eqm, String devName, int mask) |
Assigns a mask to a registered device More... | |
static Int32 | SetDeviceOfflineStatus (String eqm, String devName, Boolean offline) |
Assigns an offline status to a registered device More... | |
static Int32 | SetDeviceRegion (String eqm, String devName, String region) |
Assigns an alarm region to a registered device More... | |
static Int32 | SetDeviceZPosition (String eqm, String devName, float zposition) |
Assigns an Z-position to a registered device More... | |
static void | SetExcludePointsOfInterest (Boolean value) |
Turns local history points of interest data taking on or off More... | |
static void | SetFecLogDepth (Int32 depth) |
Sets the approximate maximum number of log entries in the FEC process's log file. More... | |
static void | SetHistoryDeactivateOnError (Boolean value) |
Turns local history decactivation on error on or off More... | |
static void | SetHistoryFilesRepository (String path) |
Establishes the local history file repository. More... | |
static void | SetHistoryStaticFilesRepository (String path) |
Establishes the static local history file repository. Local history files located in this area will not be automatically removed by the local history system. More... | |
static void | SetSystemDataStamp (int value) |
A server will automatically obtain and update the cannonical system data stamp for its context if a CYCLER is available for that context. The system data stamp logically represents a 'cycle number' or 'pulse number' which is used to systematically tag data objects. If no CYCLER exists, then the value for the system data stamp will always be = 0. A server may need to record the current system stamp at the time of e.g. a hardware trigger and apply the value in subsequent calls to access data. This method can be used toward these ends. More... | |
static void | SetUseStandardHistoryFiles (Boolean value) |
Turns on so-called standard non-fragmented (worst-case) local history files More... | |
static UInt32 | SetWorkAreaSize (UInt32 sizeInBytes) |
Sets the server-side work area size which is coupled to the maximum transport size for supported by a single-threaded server. More... | |
static Int32 | SrvLog (string filename, string tag, string text) |
Appends the given text to the designated log file. More... | |
static void | StartServices () |
Required call for the TINE engine to function property. More... | |
static void | StopServices () |
Explicity shuts down the TINE engine (not something you want to be doing very often). More... | |
TKernel is the TINE Kernel (singleton) class, whose static methods are used to manage the TINE engine.
|
inlinestatic |
Assigns specific buffer capacity for certain configurable TINE sockets.
The standard TINE client and server sockets (both UDP, TCP, and STREAM) are initiated with a reasonable default amount of receive (64 Kbyte) and send (32 Kbyte) buffer capacity. If for any performance reason, more or less buffer capactiy is needed, this routine should be called prior to any calls to SystemInit() or SystemCycle(). For example, VxWorks builds which do not have a large amount of network resources might want to set these values smaller than the defaults. Video system clients expecting extreme amounts of incoming data might want to set these values to a much larger amount.
This call allows the setting of the server side receive buffer space as well as the client side send buffer space. This is potentially applicable in rare cases (middle layer servers) where large data payloads are sent as input from a client to a server.
As in the case of _SystemAssignBufferSpace(), the UDP specific send buffer size is kept to a reasonable value, no larger than twice the registered packet MTU. UDP datagram transmission is not inhibited by any client-server flow control which might cause the send buffer space to stack up.
clnRcvBufferSpace | is the amount of receive buffer space (in bytes) to assign to the configurable TINE client sockets. A value of '0' will assign the default receive buffer capacity. |
srvRcvBufferSpace | is the amount of receive buffer space (in bytes) to assign to the configurable TINE server sockets. A value of '0' will assign the same value as clnRcvBufferSpace (and damping this value by a factor of 2 should it exceed the default receive buffer capacity). |
clnSndBufferSpace | s the amount of send buffer space (in bytes) to assign to the configurable TINE client sockets. A value of '0' will assign the same value as srvSndBufferSpace (and damping this value by a factor of 2 should it exceed the default receive buffer capacity). |
srvSndBufferSpace | is the amount of send buffer space (in bytes) to assign to the configurable TINE server TCP or STREAM sockets. The UDP socket buffer space will be at least as large as twice the assigned UDP packet MTU. A value of 0' will assign the default send buffer capacity. |
|
inlinestatic |
Assigns specific buffer capacity for certain configurable TINE sockets.
The standard TINE client and server sockets (both UDP, TCP, and STREAM) are initiated with a reasonable default amount of receive (64 Kbyte) and send (32 Kbyte) buffer capacity. If for any performance reason, more or less buffer capactiy is needed, this routine should be called prior to any calls to SystemInit() or SystemCycle(). For example, VxWorks builds which do not have a large amount of network resources might want to set these values smaller than the defaults. Video system clients expecting extreme amounts of incoming data might want to set these values to a much larger amount.
The principal benificiaries of the 'receive buffer space' are the client sockets (UDP,TCP and SREAM), whereas the principal benificiaries of the 'send buffer space' are the server sockets (TCP and STREAM). The remaining socket buffer space (e.g. client-side send buffer space or server side receive buffer space) will be held at 'reasonable' values, the assumption being that the dominant data delivery will generally server (sending) to client (receiving).
rcvBufferSpace | s the amount of receive buffer space (in bytes) to assign to the configurable TINE sockets. A value of '0' will assign the default receive buffer capacity. |
sndBufferSpace | sndBufferSpace is the amount of send buffer space (in bytes) to assign to the configurable TINE TCP or STREAM sockets. The UDP socket send buffer space if not influenced by this parameter and will be at least as large as twice the assigned UDP packet MTU. See _SystemAssignUdpSendBufferSpace(). A value of 0' will assign the default send buffer capacity. |
|
inlinestatic |
Appends the given text to the FEC process's log file.
Each log entry is prefixed by the FEC process name (i.e. the 'FECNAME') and the time and date. The location of the log file (named 'fec.log' and rotated once into 'fec.bak') is determined by the environment variable FEC_LOG (first choice) or FEC_HOME. If neither environment variable is set, then the fec.log file will be written to the current working directory.
text | is the desired text to be appended to the FEC log file |
|
inlinestatic |
Provides the last established data timestamp.
A call to getDataTimeStamp() immediately following a call to ExecLink() or within a callback routine will yield the data timestamp of the call. Note: This call is not thread-safe. Synchronous data acquisition on two different threads could conceivably interfer with the value returned from this routine. A thread-safe way of obtaining the data timestamp associated with a call is to use the .dTimestamp field of the DTYPE object for synchronous calls such as ExecLink() or ExecLinkEx() or to use getCurrentDataTimeStampFromCallbackId() or getCurrentDataTimeStamp() (which take a link identifier as input parameter) for asynchronous links.
|
inlinestatic |
Retrieves the current setting for the maximum number of log entries in the FEC process's log file.
|
inlinestatic |
The current local history file repository
|
inlinestatic |
The current static local history file repository Local history files located in this area will not be automatically removed by the local history system.
|
inlinestatic |
Obtains the FEC port offset appropriate for the give FEC name.
In cases where the pure registration API routines are used to register FEC and server information (as opposed to a common fecid.csv configuration file) it is often a more cumbersome task to ensure a unique FEC port on the host machine. This routine can be used to this end. It will search the existing FEC manifest on the current host in order to find the matching entry for the given FEC name. If the entry is not found, then the 'next free port' is returned. In this way the FEC can always register with its own proper FEC port, without the need to hard code this number.
If this routine is called after the server is running and the FEC name is not found in the manifest then -name_unknown is returned.
fecName |
|
inlinestatic |
Provides the last established system data stamp
A server will automatically obtain and update the cannonical system data stamp for its context if a CYCLER is available for that context. The system data stamp logically represents a 'cycle number' or 'pulse number' which is used to systematically tag data objects. If no CYCLER exists, then the value for the system data stamp will always be = 0.
|
inlinestatic |
Returns the current UTC time (seconds since 1970) as a double (with fractional seconds).
|
inlinestatic |
Gets the server-side work area size which is coupled to the maximum transport size for supported by a single-threaded server.
Server-side equipment function calls are double buffered, one buffer being a dynamic allocation of the caller's requested data size, the other buffer being in the case of single threaded servers, a temporary use of the server's work area. In order to allow transfer of 'large' data sets, this size needs to be adjusted accordingly prior to server initialization. Note that multi-threaded servers will dynamically allocate both buffers on a call by call basis.
|
inlinestatic |
Initializes the TINE server engine.
This method MUST be invoked for the TINE server engine to function property. Should be called prior to the start of the main TINE server engine. Any deviations from default system parameters should be made before server initialization. This might include server settings which fix the size of the local connection table entries, the maximum date transport size, etc. Note that InitializeServer() will begin allocating space for its connection tables, so modifying these values away from their defaults will have no effect after InitializeServer() has been called. Also, if the FEC Name is given by calling RegisterFecName() then this should also preceed a call to InitializeServer().
Example:
|
inlinestatic |
Makes a data timestamp according to the current system time.
|
inlinestatic |
A server will automatically obtain and update the cannonical system data stamp for its context if a CYCLER is available for that context. The system data stamp logically represents a 'cycle number' or 'pulse number' which is used to systematically tag data objects. If no CYCLER exists, then the value for the system data stamp will always be = 0. This call is in parallel with MakeDataTimeStamp() and is nominally equivalent to GetSystemDataStamp.
|
inlinestatic |
Makes a UTC double from the give string input
value | A TINE time string |
|
inlinestatic |
Assigns a device name to the specified device number.
Many servers handle instances of a given device type, such as a set of vacuum pumps, beam position monitors, magnet power supply controllers, etc. It is frequently very efficient to code in terms of device numbers which might be an index into an array, but to specify modules in calls by their human-readable names. For such purposes a device name can be assigned to a number at initialization via a call to RegisterDeviceName() (alias: RegisterModuleName()). An alternative is to provide a startup database file 'devices.csv' containing a cross-reference for numbers and names. Internally, a hash table is maintained for fast lookups inside equipment module routines.
eqm | The local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
devName | Up to 64 characters device name to be assigned |
devNr | The device number associated with the device name specified. |
Example:
Referenced by tine.TEquipmentModule.RegisterDeviceName().
|
inlinestatic |
Assigns a FEC Name and descriptive information to the server process. With this call, the FEC's port offset will be determined by accessing the local manifest.
Servers must be assigned to a Front End Computer (FEC), which for many operating systems corresponds to a process running on the computer rather than the computer itself (meaning there can in some cases be more than one servers with different 'FEC' names running on the same computer. There can be several device servers attached to the same FEC (i.e. sharing the same address space), so the FEC name is a distinct quantity from the device server name (see RegisterExport()), and this name must also be system-wide unique. The call RegisterFecInformation() supercedes RegisterFecNameEx() and RegisterFecName() and differs from them in that it accepts 'Context' and 'SubSystem' as parameters, both of which will be applied to all device servers attaching to the same FEC name. The FEC name can also be (and frequently is) registered via the presence of an 'fecid.csv' startup database file.
fecName | The FEC name indentifying the Front End Computer and to which all registered equipment modules are bound. |
defaultSubSystem | The subsystem to which attached device servers belong. Note that the subsystem (unlike context) is itself not part of the name space, although the name space can be queried for device servers belonging to a subsystem. This information is now deduced automatically from the library build. |
defaultContext | A 32-character string giving the context of all registered equipment modules. (earlier versions of TINE truncated at 16 characters). |
fecDescription | A 64-character desciption of the FECs server duties. A 'subsystem' can be associated with ALL equipment modules found on the FEC by prefixing the description with a subsystem tag. This information will be parsed by the Equipment name server and used for sub-system specific queries. For example, the associate the FEC "HEPHF" with the subsystem "RF", the description field might be "[RF]Hera Proton HF Control". |
fecLocation | A 32-character string giving the phyical location of the FEC. |
attachedHardware | A 32-character brief description of the IO hardware found on the FEC. |
responsible | A 32-character string listing the developer(s) responsible for the FEC. Note: The Equipment Name Server will allow the removal of FECs and associated equipment modules to the user(s) specified here. |
|
inlinestatic |
Assigns a FEC Name and descriptive information to the server process.
Servers must be assigned to a Front End Computer (FEC), which for many operating systems corresponds to a process running on the computer rather than the computer itself (meaning there can in some cases be more than one servers with different 'FEC' names running on the same computer. There can be several device servers attached to the same FEC (i.e. sharing the same address space), so the FEC name is a distinct quantity from the device server name (see RegisterExport()), and this name must also be system-wide unique. The call RegisterFecInformation() supercedes RegisterFecNameEx() and RegisterFecName() and differs from them in that it accepts 'Context' and 'SubSystem' as parameters, both of which will be applied to all device servers attaching to the same FEC name. The FEC name can also be (and frequently is) registered via the presence of an 'fecid.csv' startup database file.
fecName | The FEC name indentifying the Front End Computer and to which all registered equipment modules are bound. |
defaultSubSystem | The subsystem to which attached device servers belong. Note that the subsystem (unlike context) is itself not part of the name space, although the name space can be queried for device servers belonging to a subsystem. This information is now deduced automatically from the library build. |
defaultContext | A 32-character string giving the context of all registered equipment modules. (earlier versions of TINE truncated at 16 characters). |
fecDescription | A 64-character desciption of the FECs server duties. A 'subsystem' can be associated with ALL equipment modules found on the FEC by prefixing the description with a subsystem tag. This information will be parsed by the Equipment name server and used for sub-system specific queries. For example, the associate the FEC "HEPHF" with the subsystem "RF", the description field might be "[RF]Hera Proton HF Control". |
fecLocation | A 32-character string giving the phyical location of the FEC. |
attachedHardware | A 32-character brief description of the IO hardware found on the FEC. |
responsible | A 32-character string listing the developer(s) responsible for the FEC. Note: The Equipment Name Server will allow the removal of FECs and associated equipment modules to the user(s) specified here. |
portOffset | The 'Port Offset' to be applied to the FEC. This parameter plays an important role where more that one FEC is to run on a machine running an operating system using virtual memory. In such cases 'Front End Computer' is a misnomer, since "FEC" really refers to a process running on the computer to which one or more equipment modules are bound. For operating systems where all processes run in the same address space (such as VxWorks, MS-DOS, Win16, NIOS) there is in fact only one such processes managing all requistered equipment modules. For systems using virtual memory (such as Linux, Solaris, HP-UX, Win32, etc.), you can have many such processes running independently of one another. Since each such process must listen on a unique set of server ports, you must see to it that all such FEC processes are registered with a unique 'Port Offset'. |
Example:
|
inlinestatic |
Assigns pertinent information for the specified property.
Servers export their behavior through Properties, which can be thought of as 'properties' in the Object Oriented sense with Get and Set methods. That is, any read or write access for a given property will call into the associated equipment module and be handled there. The general behavior of the property (including descriptions) can be specified with this call. Properties can also be (and frequently are) registered via the presence of an 'exports.csv' startup database file. Note: Properties which are overloaded can and should be registered more than once with the appropriate characteristics supplied in the registration call.
eqm | A local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
prpName | Property name in question (up to 32 characters, preferably 16 or less). |
dtOut | Atemplate data object giving the default format size, and structure tag (if any) of the output data set to be returned by the server to the caller. |
dtIn | A template data object giving the default format size, and structure tag (if any) of the input data set to be supplied by the caller. |
accessMode | the data 'access' (e.g. CA_READ or CA_WRITE) accepted by the server. This parameter can be used to coerce client-side links into using preferred link attributes. For example, by applying the CA_NETWORK flag (CA_READ|CA_NETWORK) to the access, asynchronous NETWORK (i.g. multicast acquisition) will be enforced at the client side. Applying the CA_XREAD access flag will likewise allow exclusive READ access regarding the registered property (i.e. the same security rules applied to CA_WRITE will be in force for READ acquisitions, either permanently - no CA_READ flag, or temporarily in case of an applied access lock - if both CA_READ and CA_XREAD are applied). Applying the CA_SAVERESTORE flag will apply the internal save-and-restore logic to the registered property (restoring the last property settings upon server startup, and saving any changed property settings). |
arrayType | Data 'array type' (AT_SCALAR, AT_SINGLE, etc.) associated with the returned data. |
rowLength | if > 0 gives the row length of the returned array data. This is most relevant for double arrays, where the number of rows is then given by the output data size divided by the row length. |
prpDescription | The 64-character description of what the property reads or writes. |
prpId | The property identifier to be associated with the property name returned in calls to GetPropertyId() |
redirectionTarget | A redirection string, if the property is to be redirected to another server. Most properties are not redirected, and this parameter is usually NULL. If used, it will be parsed according to device server/device name (device property), where the 'device name' and 'device property' are optional. If 'device name' is not present, all devices will be redirected to the specified device server. If 'device property' is not present then the identical property name as registered will be redirected to the device server specified. If on the other hand, the device property is present in the string to be parsed, then the property registered will be redirected to the device server specified as well as to the device property specified. |
Example:
References tine.TDataType.GetDataFormat(), and tine.TDataType.GetDataTag().
Referenced by tine.TEquipmentModule.RegisterPropertyInformation().
|
inlinestatic |
Sets the intrinsic data timestamp to the value given.
This call is typically used inside an equipment function to set the data timestamp associated with the request being made. For instance, when the data are taken from the hardware IO loop, a call to makeDataTimeStamp() is made to get the current system timestamp. Then when a request for data is made the caller can know the precise time of data acquisition. If this routine is not called, then the current system time will be used to stamp the data.
timestamp | The timestamp to be associated with the next data set. |
|
inlinestatic |
Assigns a description to a registered device
eqm | The local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
devName | Up to 64 characters device name for which the description is to be assigned |
description | The device description to assign to the device |
|
inlinestatic |
Assigns a location to a registered device
eqm | The local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
devName | Up to 64 characters device name for which the location is to be assigned |
location | The device location to assign to the device |
|
inlinestatic |
Assigns a mask to a registered device
eqm | The local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
devName | Up to 64 characters device name for which the location is to be assigned |
mask | The device mask to assign to the device |
|
inlinestatic |
Assigns an offline status to a registered device
eqm | The local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
devName | Up to 64 characters device name for which the location is to be assigned |
offline | The offline status: 'true' => device is offline, 'false' => device is online |
|
inlinestatic |
Assigns an alarm region to a registered device
eqm | The local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
devName | Up to 64 characters device name for which the region is to be assigned |
region | The alarm region to assign to the device |
|
inlinestatic |
Assigns an Z-position to a registered device
eqm | The local equipment module name (maximum 6 characters in length) For example: "BPMEQM". |
devName | Up to 64 characters device name for which the location is to be assigned |
zposition | The Z (longitundinal) position of the device in the machine |
|
inlinestatic |
Turns local history points of interest data taking on or off
value | if 'true' will instruct the local history system not to keep points of interest |
|
inlinestatic |
Sets the approximate maximum number of log entries in the FEC process's log file.
The number of long entries is approximately deterimed by assuming the the average line of text contains 160 characters. If the number so deterimed exceeds the given FEC log depth, the current log file 'fec.log' will be rotated into 'fec.bak'.
depth | is the maximum number of lines the FEC's log file is allowed to have. (default = 1000) |
|
inlinestatic |
Turns local history decactivation on error on or off
value | if 'true' will mark a local history entry as non-active |
|
inlinestatic |
Establishes the local history file repository.
path | the directory path specifying the repository |
|
inlinestatic |
Establishes the static local history file repository. Local history files located in this area will not be automatically removed by the local history system.
path | the directory path specifying the repository |
|
inlinestatic |
A server will automatically obtain and update the cannonical system data stamp for its context if a CYCLER is available for that context. The system data stamp logically represents a 'cycle number' or 'pulse number' which is used to systematically tag data objects. If no CYCLER exists, then the value for the system data stamp will always be = 0. A server may need to record the current system stamp at the time of e.g. a hardware trigger and apply the value in subsequent calls to access data. This method can be used toward these ends.
value | is the value of the system data stamp to apply to current data access. |
|
inlinestatic |
Turns on so-called standard non-fragmented (worst-case) local history files
value | if 'true' will instruct the local history system to use a 'standard' (non-fragmented) file set |
|
inlinestatic |
Sets the server-side work area size which is coupled to the maximum transport size for supported by a single-threaded server.
Server-side equipment function calls are double buffered, one buffer being a dynamic allocation of the caller's requested data size, the other buffer being in the case of single threaded servers, a temporary use of the server's work area. In order to allow transfer of 'large' data sets, this size needs to be adjusted accordingly prior to server initialization. Note that multi-threaded servers will dynamically allocate both buffers on a call by call basis.
sizeInBytes | is the size in bytes to be reserved for the server's work area and hence the maximum allowed transport size for any property supported by the server. (default: 64 KBytes on most operating systems). |
|
inlinestatic |
Appends the given text to the designated log file.
filename | is the file name to which the log entry is to be appended. The file will be created in the 'FEC_LOG' or 'FEC_HOME' directory (as in the case of fec.log), and rotated using the same log depth established via SetFecLogDepth(). |
tag | is a 'procedure tag' which will prefix the given log entry. If ommitted, the tag 'logger' will be used. |
text | is the desired log entry text. |
|
inlinestatic |
Required call for the TINE engine to function property.
Export registered properties and devices, plug into the Equipment Name Services, begin monitoring local histories and alarms and servicing requests from callers.
Example:
|
inlinestatic |
Explicity shuts down the TINE engine (not something you want to be doing very often).