Tyco Electronics 1525l Car Video System User Manual


 
MagTek Device Drivers for Windows
80
COMMANDS
Like properties, commands are identified by a string name and have string arguments. All
commands are terminated by line feed <LF> or a carriage return. To invoke a command, an
application simply writes it to the driver in the same manner as writing to a file or serial port. If
the command has a response defined for it, the application reads it from the driver using the same
I/O handle as in the write.
Four types of commands are defined by the device control language:
Non-interactive – These commands manipulate the device without requiring any
interaction with the user. The property commands
get and set, reset and ver are
examples of this type.
Interactive – These commands interact with the user. They do not necessarily require the
user to do anything but may only prompt the user to do something.
display is an
example of such a command. Others, such as read or write, however, require user
interaction to complete. For example, the user must either swipe a card or cancel the
operation in order to complete a read command.
Device-specific – These commands give access to device-specific features. For example,
the
load_key command is available for MagTek devices that use keys to encrypt data
before sending it to the host.
Raw – These are effectively escape commands. They allow the application to bypass the
driver to perform device-specific operations that are not included in the driver syntax and
not supported elsewhere. With these commands, an application has no limitations on the
amount of control it has over a device. The raw commands can be formatted exactly as
specified in the device documentation. The command bracketing will be inserted by the
driver if required (e.g., <stx> and <etx> will be inserted for certain devices). Three
commands are defined for this type:
rawsend and rawrecv, used to send and receive
data directly to the device, and
rawxact, a transactional version that is a combination of
the first two.
A small set of interactive and non-interactive commands is all that is required for an application
to perform the most common tasks with these devices. Device-specific or raw commands should
rarely ever be needed.