Raritan PX2/PX3 JSON-RPC API
CardReaderManager.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3  * Copyright 2013 Raritan Inc. All rights reserved.
4  */
5 
6 #ifndef __SMARTCARD_CARD_READER_MANAGER_IDL__
7 #define __SMARTCARD_CARD_READER_MANAGER_IDL__
8 
9 #include <CardReader.idl>
10 #include <Event.idl>
11 #include <UserEvent.idl>
12 
13 /** Card Reader Manager */
14 module smartcard {
15 
16  /** Card Reader Manager Interface */
18 
19  /**
20  * Card Reader Settings
21  */
22  structure CardReaderSettings {
23  string name; ///< User-defined name
24  string description; ///< User-defined description
25  };
26 
27  /**
28  * Card Reader base event
29  */
30  valueobject CardReaderEvent extends idl.Event {
31  CardReader_1_0_3 cardReader; ///< affected card reader
32  };
33 
34  /**
35  * Card Reader attached event
36  */
37  valueobject CardReaderAttachedEvent extends CardReaderEvent {};
38 
39  /**
40  * Card Reader detached event
41  */
42  valueobject CardReaderDetachedEvent extends CardReaderEvent {};
43 
44  /*
45  * Event: A card reader's settings have been changed
46  */
47  valueobject CardReaderSettingsChangedEvent extends event.UserEvent {
48  CardReaderSettings oldSettings; ///< Settings before change
49  CardReaderSettings newSettings; ///< Settings after change
50  string position; ///< Position of the card reader (see CardReader.MetaData)
51  };
52 
53  /**
54  * Retrieve the list of connected card readers.
55  *
56  * @return Card Readers list
57  */
58  vector<CardReader_1_0_3> getCardReaders();
59 
60  /**
61  * Get card reader for a specific id.
62  *
63  * @param readerId card reader id
64  *
65  * @return Card Reader with given id or null
66  */
67  CardReader_1_0_3 getCardReaderById(in string readerId);
68 
69  /**
70  * Set settings for a card reader.
71  *
72  * @param position position of card reader (see CardReader.MetaData)
73  * @param settings new settings for card reader
74  *
75  * @return NO_ERROR if OK
76  * @return ERR_INVALID_PARAMS if any setting is invalid
77  */
78  int setCardReaderSettings(in string position, in CardReaderSettings setting);
79 
80  /**
81  * Get settings for all card readers.
82  *
83  * @return Map of settings by card reader position (see CardReader.MetaData)
84  */
85  map<string, CardReaderSettings> getAllCardReaderSettings();
86  };
87 
88 }
89 
90 #endif /* __SMARTCARD_CARD_READER_MANAGER_IDL__ */
Card Reader Settings.
Definition: CardReaderManager.idl:22
string name
User-defined name.
Definition: CardReaderManager.idl:23
Card Reader Manager Interface.
Definition: CardReaderManager.idl:17
string description
User-defined description.
Definition: CardReaderManager.idl:24
Basic IDL definitions.
Definition: Event.idl:10
CardReaderSettings newSettings
Settings after change.
Definition: CardReaderManager.idl:49
Card Reader.
Definition: CardReader.idl:12
string position
Position of the card reader (see CardReader::MetaData)
Definition: CardReaderManager.idl:50
Card Reader Interface.
Definition: CardReader.idl:15