Go to the first, previous, next, last section, table of contents.


Figure 1: ProtoGen Interfacing Application Software

The ProtoGen interface application programs perform two basic tasks:

  1. convert output of the Radiometer instruments to HL7
  2. convert a "standard"(1) HL7 to CareVue's dialect of HL7 and forward the message to the CareVue HL7 interface

Communication from Radiometer instruments and to CareVue uses serial lines. The operation of serial lines has been separated from the message handling and conversion. On the ABL side, the radioshell program configures the serial device and accepts messages which it pipes them to the abl500 program for ABL 500 and 600 series or to the abl300 program for the ABL 300. The abl500 program reads the ASTM message that was sent by the ABL 500 via the radioshell from the standard input and transforms it to a HL7 ORU message using the LOINC code and ISO+ units. The HL7 message is written as a message file to a spool directory.

At fixed time intervals, triggered by cron(8), there is a shell script hl7tocv that forwards all message files in the spool directory to the cvgateway that is running as a demon in the background. The cvgateway listens at a TCP port (named "carevuehl7" in `/etc/services') and converts the "standard" HL7 message to CareVue's HL7 dialect (cvHL7). The cvHL7 message is then forwarded to an other TCP port ("carevuefsi") where the llpdrv program acts as a relay for the ANSI X3.28 serial line to CareVue's FSISERVER. The cvgateway program uses the LabEventInfo database in order to hand lab results to the CareVue system formatted properly according to the configuration of the CareVue system. Therefore the CareVue system's LabEventMap table should always be configured using the LabEventInfo database.

The radioshell, hl7tocv, and cvgateway programs write their input messages as files into a journal directory, used for monitoring the proper work of system.

The databases for LOINC and ISO+ unit codes, as well as for the LabEventInfo databases are created and maintained with their respective "manager" programs (loincmgr, unitmgr, and LabEventInfoMgr) using their human readable tabular form stored in the `.tab' files.

Go to the first, previous, next, last section, table of contents.