
The POS Application (or Application) is an Application that uses one or more UnifiedPOS devices.
UnifiedPOS Devices are divided into categories called Device Categories, such as Cash Drawer and POS Printer.
Each UnifiedPOS Device is a combination of these components:
Control for a device category. The Control class provides the interface between the Application and the device category. It contains no graphical component and is therefore invisible at runtime.
The Control has been designed so that all implementations of a device cate-gorys control will be compatible. Therefore, the Control can be developed independently of the Service for the same device category (they can even be developed by different companies).
Service, which is a component called by the Control through the Service Interface. The Service is used by the Control to implement UnifiedPOS-prescribed functionality for a Physical Device. It can also call special event methods provided by the Control to deliver events to the Application.
A set of Service classes can be implemented to support Physical Devices with multiple Device Categories.
The Application manipulates the Physical Device (the hardware unit or peripheral) by calling the platform specific APIs which conform to the UnifiedPOS standard. Some Physical Devices support more than one device category. For example, some POS Printers include a Cash Drawer kickout, and some Bar Code Scanners include an integrated Scale. However with UnifiedPOS, an application treats each of these device categories as if it were an independent Physical Device. The UnifiedPOS Device standard developer is responsible for presenting the peripheral in this way.
Note: Occasionally, a Device may be implemented in software with no user-exposed hardware, in which case it is called a Logical Device.