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  [sparse_in]
23  structure CardReaderSettings {
24  string name; ///< User-defined name
25  string description; ///< User-defined description
26  string cardFormat; ///< Card format, must be one of the values returned by
27  ///< getSupportedCardFormats(); use "RAW" for plain
28  ///< hexadecimal representation.
29  };
30 
31  /**
32  * Card Reader base event
33  */
34  valueobject CardReaderEvent extends idl.Event {
35  CardReader_1_0_3 cardReader; ///< affected card reader
36  };
37 
38  /**
39  * Card Reader attached event
40  */
41  valueobject CardReaderAttachedEvent extends CardReaderEvent {};
42 
43  /**
44  * Card Reader detached event
45  */
46  valueobject CardReaderDetachedEvent extends CardReaderEvent {};
47 
48  /*
49  * Event: A card reader's settings have been changed
50  */
51  valueobject CardReaderSettingsChangedEvent extends event.UserEvent {
52  CardReaderSettings oldSettings; ///< Settings before change
53  CardReaderSettings newSettings; ///< Settings after change
54  string position; ///< Position of the card reader (see CardReader.MetaData)
55  };
56 
57  /**
58  * Retrieve the list of connected card readers.
59  *
60  * @return Card Readers list
61  */
62  vector<CardReader_1_0_3> getCardReaders();
63 
64  /**
65  * Get card reader for a specific id.
66  *
67  * @param readerId card reader id
68  *
69  * @return Card Reader with given id or null
70  */
71  CardReader_1_0_3 getCardReaderById(in string readerId);
72 
73  /**
74  * Set settings for a card reader.
75  *
76  * @param position position of card reader (see CardReader.MetaData)
77  * @param settings new settings for card reader
78  *
79  * @return NO_ERROR if OK
80  * @return ERR_INVALID_PARAMS if any setting is invalid
81  */
82  int setCardReaderSettings(in string position, in CardReaderSettings setting);
83 
84  /**
85  * Get settings for all card readers.
86  *
87  * @return Map of settings by card reader position (see CardReader.MetaData)
88  */
89  map<string, CardReaderSettings> getAllCardReaderSettings();
90 
91  /**
92  * Retrieve the list of supported card formats like "RAW", "H10301", etc.
93  *
94  * @return Card Formats list
95  */
96  vector<string> getSupportedCardFormats();
97  };
98 
99 }
100 
101 #endif /* __SMARTCARD_CARD_READER_MANAGER_IDL__ */
smartcard::CardReaderManager_1_0_4::getAllCardReaderSettings
map< string, CardReaderSettings > getAllCardReaderSettings()
Get settings for all card readers.
smartcard::CardReaderManager_1_0_4::CardReaderSettings
Card Reader Settings.
Definition: CardReaderManager.idl:23
smartcard::CardReaderManager_1_0_4::getCardReaders
vector< CardReader_1_0_3 > getCardReaders()
Retrieve the list of connected card readers.
smartcard::CardReaderManager_1_0_4::newSettings
CardReaderSettings newSettings
Settings after change.
Definition: CardReaderManager.idl:53
smartcard::CardReaderManager_1_0_4::position
string position
Position of the card reader (see CardReader::MetaData)
Definition: CardReaderManager.idl:54
smartcard::CardReaderManager_1_0_4::CardReaderSettings::name
string name
User-defined name.
Definition: CardReaderManager.idl:24
smartcard::CardReaderManager_1_0_4::setCardReaderSettings
int setCardReaderSettings(in string position, in CardReaderSettings setting)
Set settings for a card reader.
idl
Basic IDL definitions.
Definition: Event.idl:10
smartcard::CardReaderManager_1_0_4::CardReaderSettings::description
string description
User-defined description.
Definition: CardReaderManager.idl:25
smartcard::CardReaderManager_1_0_4::getSupportedCardFormats
vector< string > getSupportedCardFormats()
Retrieve the list of supported card formats like "RAW", "H10301", etc.
smartcard
Card Reader.
Definition: CardReader.idl:12
smartcard::CardReader_1_0_3
Card Reader Interface.
Definition: CardReader.idl:15
smartcard::CardReaderManager_1_0_4
Card Reader Manager Interface.
Definition: CardReaderManager.idl:17
smartcard::CardReaderManager_1_0_4::getCardReaderById
CardReader_1_0_3 getCardReaderById(in string readerId)
Get card reader for a specific id.
smartcard::CardReaderManager_1_0_4::CardReaderSettings::cardFormat
string cardFormat
Card format, must be one of the values returned by getSupportedCardFormats(); use "RAW" for plain hex...
Definition: CardReaderManager.idl:26