Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
mbed-os/docs/design-documents/nfc/uml_diagram_endpoints.txt@3:f3764f852aa8, 2018-10-11 (annotated)
- Committer:
- kadonotakashi
- Date:
- Thu Oct 11 02:27:46 2018 +0000
- Revision:
- 3:f3764f852aa8
- Parent:
- 0:8fdf9a60065b
Nucreo 446 + SSD1331 test version;
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| kadonotakashi | 0:8fdf9a60065b | 1 | @startuml |
| kadonotakashi | 0:8fdf9a60065b | 2 | |
| kadonotakashi | 0:8fdf9a60065b | 3 | abstract class NFCNDEFCapable { |
| kadonotakashi | 0:8fdf9a60065b | 4 | +{abstract} bool is_ndef_supported() const |
| kadonotakashi | 0:8fdf9a60065b | 5 | |
| kadonotakashi | 0:8fdf9a60065b | 6 | #void parse_ndef_message(const ac_buffer_t& buffer) |
| kadonotakashi | 0:8fdf9a60065b | 7 | #void build_ndef_message(ac_buffer_builder_t& buffer_builder) |
| kadonotakashi | 0:8fdf9a60065b | 8 | #ndef_msg_t* ndef_message() |
| kadonotakashi | 0:8fdf9a60065b | 9 | #{abstract} NFCNDEFCapable::Delegate* ndef_capable_delegate() |
| kadonotakashi | 0:8fdf9a60065b | 10 | } |
| kadonotakashi | 0:8fdf9a60065b | 11 | |
| kadonotakashi | 0:8fdf9a60065b | 12 | abstract class NFCNDEFCapable::Delegate { |
| kadonotakashi | 0:8fdf9a60065b | 13 | +{abstract} void parse_ndef_message(const Span<const uint8_t> &buffer) |
| kadonotakashi | 0:8fdf9a60065b | 14 | +{abstract} size_t build_ndef_message(const Span<uint8_t> &buffer) |
| kadonotakashi | 0:8fdf9a60065b | 15 | } |
| kadonotakashi | 0:8fdf9a60065b | 16 | |
| kadonotakashi | 0:8fdf9a60065b | 17 | abstract class NFCRemoteEndpoint { |
| kadonotakashi | 0:8fdf9a60065b | 18 | +{abstract} bool is_connected() const |
| kadonotakashi | 0:8fdf9a60065b | 19 | +{abstract} bool is_disconnected() const |
| kadonotakashi | 0:8fdf9a60065b | 20 | +{abstract} nfc_rf_protocols_bitmask_t rf_protocols() const |
| kadonotakashi | 0:8fdf9a60065b | 21 | +{abstract} nfc_err_t connect() |
| kadonotakashi | 0:8fdf9a60065b | 22 | +{abstract} nfc_err_t disconnect() |
| kadonotakashi | 0:8fdf9a60065b | 23 | } |
| kadonotakashi | 0:8fdf9a60065b | 24 | |
| kadonotakashi | 0:8fdf9a60065b | 25 | abstract class NFCRemoteEndpoint::Delegate { |
| kadonotakashi | 0:8fdf9a60065b | 26 | +{abstract} void on_connected() |
| kadonotakashi | 0:8fdf9a60065b | 27 | +{abstract} void on_disconnected() |
| kadonotakashi | 0:8fdf9a60065b | 28 | } |
| kadonotakashi | 0:8fdf9a60065b | 29 | |
| kadonotakashi | 0:8fdf9a60065b | 30 | abstract class NFCTarget { |
| kadonotakashi | 0:8fdf9a60065b | 31 | +void write_ndef_message() |
| kadonotakashi | 0:8fdf9a60065b | 32 | +void erase_ndef_message() |
| kadonotakashi | 0:8fdf9a60065b | 33 | +void read_ndef_message() |
| kadonotakashi | 0:8fdf9a60065b | 34 | } |
| kadonotakashi | 0:8fdf9a60065b | 35 | |
| kadonotakashi | 0:8fdf9a60065b | 36 | abstract class NFCTarget::Delegate { |
| kadonotakashi | 0:8fdf9a60065b | 37 | +{abstract} void on_ndef_message_written(nfc_err_t result) |
| kadonotakashi | 0:8fdf9a60065b | 38 | +{abstract} void on_ndef_message_erased(nfc_err_t result) |
| kadonotakashi | 0:8fdf9a60065b | 39 | +{abstract} void on_ndef_message_read(nfc_err_t result) |
| kadonotakashi | 0:8fdf9a60065b | 40 | } |
| kadonotakashi | 0:8fdf9a60065b | 41 | |
| kadonotakashi | 0:8fdf9a60065b | 42 | NFCNDEFCapable <-- NFCTarget |
| kadonotakashi | 0:8fdf9a60065b | 43 | NFCNDEFCapable::Delegate <-- NFCTarget::Delegate |
| kadonotakashi | 0:8fdf9a60065b | 44 | |
| kadonotakashi | 0:8fdf9a60065b | 45 | class NFCEEPROM { |
| kadonotakashi | 0:8fdf9a60065b | 46 | +nfc_err_t initialize() |
| kadonotakashi | 0:8fdf9a60065b | 47 | +void set_delegate(NFCEEPROM::Delegate* delegate) |
| kadonotakashi | 0:8fdf9a60065b | 48 | } |
| kadonotakashi | 0:8fdf9a60065b | 49 | |
| kadonotakashi | 0:8fdf9a60065b | 50 | abstract class NFCEEPROM::Delegate { |
| kadonotakashi | 0:8fdf9a60065b | 51 | |
| kadonotakashi | 0:8fdf9a60065b | 52 | } |
| kadonotakashi | 0:8fdf9a60065b | 53 | |
| kadonotakashi | 0:8fdf9a60065b | 54 | abstract class NFCEEPROMDriver { |
| kadonotakashi | 0:8fdf9a60065b | 55 | +void set_delegate(Delegate* delegate) |
| kadonotakashi | 0:8fdf9a60065b | 56 | +void set_event_queue(events::EventQueue* queue) |
| kadonotakashi | 0:8fdf9a60065b | 57 | |
| kadonotakashi | 0:8fdf9a60065b | 58 | +{abstract} void reset() |
| kadonotakashi | 0:8fdf9a60065b | 59 | +{abstract} size_t get_max_size() |
| kadonotakashi | 0:8fdf9a60065b | 60 | +{abstract} void start_session(bool force = true) |
| kadonotakashi | 0:8fdf9a60065b | 61 | +{abstract} void end_session() |
| kadonotakashi | 0:8fdf9a60065b | 62 | +{abstract} void read_bytes(uint32_t address, size_t count) |
| kadonotakashi | 0:8fdf9a60065b | 63 | +{abstract} void write_bytes(uint32_t address, const uint8_t* bytes, size_t count) |
| kadonotakashi | 0:8fdf9a60065b | 64 | +{abstract} void write_size(size_t count) |
| kadonotakashi | 0:8fdf9a60065b | 65 | +{abstract} void read_size() |
| kadonotakashi | 0:8fdf9a60065b | 66 | +{abstract} void erase_bytes(uint32_t address, size_t size) |
| kadonotakashi | 0:8fdf9a60065b | 67 | #NFCEEPROMDriver::Delegate *delegate() |
| kadonotakashi | 0:8fdf9a60065b | 68 | #events::EventQueue *event_queue() |
| kadonotakashi | 0:8fdf9a60065b | 69 | } |
| kadonotakashi | 0:8fdf9a60065b | 70 | |
| kadonotakashi | 0:8fdf9a60065b | 71 | abstract class NFCEEPROMDriver::Delegate { |
| kadonotakashi | 0:8fdf9a60065b | 72 | +{abstract} void on_session_started(bool success) |
| kadonotakashi | 0:8fdf9a60065b | 73 | +{abstract} void on_session_ended(bool success) |
| kadonotakashi | 0:8fdf9a60065b | 74 | +{abstract} void on_bytes_read(size_t count) |
| kadonotakashi | 0:8fdf9a60065b | 75 | +{abstract} void on_bytes_written(size_t count) |
| kadonotakashi | 0:8fdf9a60065b | 76 | +{abstract} void on_size_read(bool success, size_t size) |
| kadonotakashi | 0:8fdf9a60065b | 77 | +{abstract} void on_size_written(bool success) |
| kadonotakashi | 0:8fdf9a60065b | 78 | +{abstract} void on_bytes_erased(size_t count) |
| kadonotakashi | 0:8fdf9a60065b | 79 | } |
| kadonotakashi | 0:8fdf9a60065b | 80 | |
| kadonotakashi | 0:8fdf9a60065b | 81 | NFCTarget <-- NFCEEPROM |
| kadonotakashi | 0:8fdf9a60065b | 82 | NFCTarget::Delegate <-- NFCEEPROM::Delegate |
| kadonotakashi | 0:8fdf9a60065b | 83 | NFCEEPROM o-- NFCEEPROM::Delegate |
| kadonotakashi | 0:8fdf9a60065b | 84 | NFCEEPROM o-- NFCEEPROMDriver |
| kadonotakashi | 0:8fdf9a60065b | 85 | NFCEEPROMDriver o-- NFCEEPROMDriver::Delegate |
| kadonotakashi | 0:8fdf9a60065b | 86 | NFCEEPROMDriver::Delegate <-- NFCEEPROM |
| kadonotakashi | 0:8fdf9a60065b | 87 | |
| kadonotakashi | 0:8fdf9a60065b | 88 | class NFCRemoteInitiator { |
| kadonotakashi | 0:8fdf9a60065b | 89 | +void set_delegate(NFCRemoteInitiator::Delegate* delegate) |
| kadonotakashi | 0:8fdf9a60065b | 90 | |
| kadonotakashi | 0:8fdf9a60065b | 91 | +{abstract}bool is_iso7816_supported() const |
| kadonotakashi | 0:8fdf9a60065b | 92 | +{abstract}void add_iso7816_application(nfc_tech_iso7816_app_t *application) |
| kadonotakashi | 0:8fdf9a60065b | 93 | |
| kadonotakashi | 0:8fdf9a60065b | 94 | +{abstract} nfc_tag_type_t nfc_tag_type() |
| kadonotakashi | 0:8fdf9a60065b | 95 | +{abstract} bool is_ndef_supported() |
| kadonotakashi | 0:8fdf9a60065b | 96 | } |
| kadonotakashi | 0:8fdf9a60065b | 97 | |
| kadonotakashi | 0:8fdf9a60065b | 98 | abstract class NFCRemoteInitiator::Delegate { |
| kadonotakashi | 0:8fdf9a60065b | 99 | |
| kadonotakashi | 0:8fdf9a60065b | 100 | } |
| kadonotakashi | 0:8fdf9a60065b | 101 | |
| kadonotakashi | 0:8fdf9a60065b | 102 | NFCNDEFCapable <-- NFCRemoteInitiator |
| kadonotakashi | 0:8fdf9a60065b | 103 | NFCRemoteEndpoint <-- NFCRemoteInitiator |
| kadonotakashi | 0:8fdf9a60065b | 104 | NFCRemoteEndpoint::Delegate <-- NFCRemoteInitiator::Delegate |
| kadonotakashi | 0:8fdf9a60065b | 105 | NFCNDEFCapable::Delegate <-- NFCRemoteInitiator::Delegate |
| kadonotakashi | 0:8fdf9a60065b | 106 | NFCRemoteInitiator o-- NFCRemoteInitiator::Delegate |
| kadonotakashi | 0:8fdf9a60065b | 107 | |
| kadonotakashi | 0:8fdf9a60065b | 108 | @enduml |