File tree Expand file tree Collapse file tree 1 file changed +31
-0
lines changed
Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Original file line number Diff line number Diff line change 1111#pragma once
1212
1313#include < memory>
14+ #include < ostream>
1415#include < string>
1516
1617#include " keypop/reader/selection/ScheduledCardSelectionsResponse.hpp"
@@ -100,5 +101,35 @@ class CardReaderEvent {
100101 getScheduledCardSelectionsResponse () const = 0 ;
101102};
102103
104+ /* *
105+ * Operator << for CardReaderEvent::Type enum to enable readable logging.
106+ *
107+ * @param os The output stream.
108+ * @param type The event type.
109+ * @return The output stream.
110+ */
111+ inline std::ostream&
112+ operator <<(std::ostream& os, const CardReaderEvent::Type type)
113+ {
114+ switch (type) {
115+ case CardReaderEvent::Type::CARD_INSERTED:
116+ os << " CARD_INSERTED" ;
117+ break ;
118+ case CardReaderEvent::Type::CARD_MATCHED:
119+ os << " CARD_MATCHED" ;
120+ break ;
121+ case CardReaderEvent::Type::CARD_REMOVED:
122+ os << " CARD_REMOVED" ;
123+ break ;
124+ case CardReaderEvent::Type::UNAVAILABLE:
125+ os << " UNAVAILABLE" ;
126+ break ;
127+ default :
128+ os << " UNKNOWN_TYPE(" << static_cast <int >(type) << " )" ;
129+ break ;
130+ }
131+ return os;
132+ }
133+
103134} /* namespace reader */
104135} /* namespace keypop */
You can’t perform that action at this time.
0 commit comments