From 411394ce92d7a33fa6467be4c6fa0bbc8ed157bc Mon Sep 17 00:00:00 2001 From: Daniel Markstedt Date: Fri, 25 Mar 2022 09:01:35 -0700 Subject: [PATCH] Updated Rules for adding new device types (markdown) --- Rules-for-adding-new-device-types.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Rules-for-adding-new-device-types.md b/Rules-for-adding-new-device-types.md index 4b0680c..b846267 100644 --- a/Rules-for-adding-new-device-types.md +++ b/Rules-for-adding-new-device-types.md @@ -10,4 +10,15 @@ Steps for adding a new device type: 6. Update the manpages. Devices shall be subclasses of PrimaryDevice or ModeSenseDevice. Only devices backed by image files shall be subclasses of the Disk class. -See the implementations of the Host Services (SCHS) and the SCSI Printer (SCLP for a device implementations with low complexity. \ No newline at end of file +See the implementations of the Host Services (SCHS) and the SCSI Printer (SCLP) for a device implementations with low complexity. + +## Clients + +The Python based clients has class methods in the Common package for detecting device types that the backend supports, which are then exposed appropriately in the various front ends. See the RaCtlCmds class for details. + +At the time of writing, the code detects three types of devices: +* Disk -- Any device that takes an image file as argument +* Removable -- Any device which can have image files inserted and ejected (overlap with the above) +* Peripheral -- Any device that does not match the above. + +For most scenarios, the Python clients should not require any modification when new device types are added. However, testing the integration before releasing a stable version is strongly recommended. \ No newline at end of file