11@startuml
22
3- abstract class NFCEndpoint {
3+ abstract class NFCNDEFCapable {
4+ +{abstract} bool is_ndef_supported() const
5+ +void set_ndef_message_parser(ndef::MessageParser* parser) const
6+ +void set_ndef_message_builder(ndef::MessageBuilder* builder) const
7+
8+ #ndef::MessageParser* ndef_message_parser()
9+ #ndef::MessageBuilder* ndef_message_builder()
10+ }
11+
12+ abstract class NFCRemoteEndpoint {
413 +void is_lost()
514 +nfc_rf_protocols_bitmask_t rf_protocols() const
615}
716
8- abstract class NFCEndpointDelegate {
9- +void on_lost()
17+ abstract class NFCRemoteEndpoint::Delegate {
18+ +{abstract} void on_lost()
1019}
1120
1221abstract class NFCTarget {
13- +void write_ndef_message(const NDEFMessage& message)
22+ +void set_delegate(NFCTarget::Delegate* delegate)
23+ +void write_ndef_message()
1424 +void erase_ndef_message()
1525 +void read_ndef_message()
1626}
1727
18- abstract class NFCTargetDelegate {
19- +void on_ndef_message_written(nfc_err_t result)
20- +void on_ndef_message_erased(nfc_err_t result)
21- +void on_ndef_message_read(nfc_err_t result, NDEFMessage* message )
28+ abstract class NFCTarget::Delegate {
29+ +{abstract} void on_ndef_message_written(nfc_err_t result)
30+ +{abstract} void on_ndef_message_erased(nfc_err_t result)
31+ +{abstract} void on_ndef_message_read(nfc_err_t result)
2232}
2333
2434class NFCEEPROM {
25- +void set_delegate(NFCEEPROMDelegate* delegate)
35+ +void set_delegate(NFCEEPROM::Delegate* delegate)
36+ }
37+
38+ abstract class NFCEEPROM::Delegate {
39+
2640}
2741
28- abstract class NFCEEPROMDelegate {
42+ abstract class NFCEEPROMDriver {
43+ +void set_delegate(Delegate* delegate)
44+
45+ +{abstract} void reset()
46+ +{abstract} size_t get_max_size()
47+ +{abstract} void start_session()
48+ +{abstract} void end_session()
49+ +{abstract} void read_bytes(uint32_t address, size_t count)
50+ +{abstract} void write_bytes(uint32_t address, const uint8_t* bytes, size_t count)
51+ +{abstract} void set_size(size_t count)
52+ +{abstract} void get_size()
53+ +{abstract} void erase_bytes(uint32_t address, size_t size)
54+ }
2955
56+ abstract class NFCEEPROMDriver::Delegate {
57+ +{abstract} void has_started_session(bool success)
58+ +{abstract} void has_read_bytes(bool success, const uint8_t* bytes)
59+ +{abstract} void has_written_bytes(bool success)
60+ +{abstract} void has_set_size(bool success)
61+ +{abstract} void has_gotten_size(bool success, size_t size)
62+ +{abstract} void has_erased_bytes(bool success)
3063}
3164
65+
66+ NFCNDEFCapable <-- NFCTarget
3267NFCTarget <-- NFCEEPROM
33- NFCTargetDelegate <-- NFCEEPROMDelegate
34- NFCEEPROM o-- NFCEEPROMDelegate
68+ NFCTarget::Delegate <-- NFCEEPROM::Delegate
69+ NFCEEPROM o-- NFCEEPROM::Delegate
70+ NFCEEPROM o-- NFCEEPROMDriver
71+ NFCEEPROMDriver::Delegate <-- NFCEEPROM
3572
3673class NFCRemoteInitiator {
37- +void set_delegate(NFCRemoteInitiatorDelegate * delegate)
74+ +void set_delegate(NFCRemoteInitiator::Delegate * delegate)
3875
3976 +bool is_iso7816_supported()
4077 +void add_iso7816_application(ISO7816App* app);
@@ -47,30 +84,31 @@ class NFCRemoteInitiator {
4784 +nfc_err_t get_ndef_message(NDEFMessage* message)
4885}
4986
50- abstract class NFCRemoteInitiatorDelegate {
87+ abstract class NFCRemoteInitiator::Delegate {
5188 +void on_selected()
5289 +void on_deselected()
53- +void on_before_ndef_read ()
54- +void on_after_ndef_write ()
90+ +void on_before_ndef_message_read ()
91+ +void on_after_ndef_message_write ()
5592}
5693
57- NFCEndpoint <-- NFCRemoteInitiator
58- NFCEndpointDelegate <-- NFCRemoteInitiatorDelegate
59- NFCRemoteInitiator o-- NFCRemoteInitiatorDelegate
94+ NFCNDEFCapable <-- NFCRemoteInitiator
95+ NFCRemoteEndpoint <-- NFCRemoteInitiator
96+ NFCRemoteEndpoint::Delegate <-- NFCRemoteInitiator::Delegate
97+ NFCRemoteInitiator o-- NFCRemoteInitiator::Delegate
6098
6199class NFCRemoteTarget {
62- +void set_delegate(NFCRemoteTargetDelegate * delegate)
100+ +void set_delegate(NFCRemoteTarget::Delegate * delegate)
63101
64102}
65103
66- abstract class NFCRemoteTargetDelegate {
104+ abstract class NFCRemoteTarget::Delegate {
67105
68106}
69107
70- NFCEndpoint <-- NFCRemoteTarget
108+ NFCRemoteEndpoint <-- NFCRemoteTarget
71109NFCTarget <-- NFCRemoteTarget
72- NFCEndpointDelegate <-- NFCRemoteTargetDelegate
73- NFCTargetDelegate <-- NFCRemoteTargetDelegate
74- NFCRemoteTarget o-- NFCRemoteTargetDelegate
110+ NFCRemoteEndpoint::Delegate <-- NFCRemoteTarget::Delegate
111+ NFCTarget::Delegate <-- NFCRemoteTarget::Delegate
112+ NFCRemoteTarget o-- NFCRemoteTarget::Delegate
75113
76114@enduml
0 commit comments