Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2555)

Unified Diff: device/nfc/nfc_adapter.h

Issue 2292703002: chromeos: Remove unused NFC D-Bus client library (Closed)
Patch Set: rebase Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « device/nfc/nfc.gyp ('k') | device/nfc/nfc_adapter.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: device/nfc/nfc_adapter.h
diff --git a/device/nfc/nfc_adapter.h b/device/nfc/nfc_adapter.h
deleted file mode 100644
index d7ae094dbea22a55bd066d7d20656d0a5a29b110..0000000000000000000000000000000000000000
--- a/device/nfc/nfc_adapter.h
+++ /dev/null
@@ -1,211 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef DEVICE_NFC_NFC_ADAPTER_H_
-#define DEVICE_NFC_NFC_ADAPTER_H_
-
-#include <map>
-#include <string>
-#include <vector>
-
-#include "base/callback.h"
-#include "base/macros.h"
-#include "base/memory/ref_counted.h"
-
-namespace device {
-
-class NfcPeer;
-class NfcTag;
-
-// NfcAdapter represents a local NFC adapter which may be used to interact with
-// NFC tags and remote NFC adapters on platforms that support NFC. Through
-// instances of this class, users can obtain important information such as if
-// and/or when an adapter is present, supported NFC technologies, and the
-// adapter's power and polling state. NfcAdapter instances can be used to power
-// up/down the NFC adapter and its Observer interface allows users to get
-// notified when new adapters are added/removed and when remote NFC tags and
-// devices were detected or lost.
-//
-// A system can contain more than one NFC adapter (e.g. external USB adapters)
-// but Chrome will have only one NfcAdapter instance. This instance will do
-// its best to represent all underlying adapters but will only allow
-// interacting with only one at a given time. If the currently represented
-// adapter is removed from the system, the NfcAdapter instance will update to
-// reflect the information from the next available adapter.
-class NfcAdapter : public base::RefCounted<NfcAdapter> {
- public:
- // Interface for observing changes from NFC adapters.
- class Observer {
- public:
- virtual ~Observer() {}
-
- // Called when the presence of the adapter |adapter| changes. When |present|
- // is true, this indicates that the adapter has now become present, while a
- // value of false indicates that the adapter is no longer available on the
- // current system.
- virtual void AdapterPresentChanged(NfcAdapter* adapter, bool present) {}
-
- // Called when the radio power state of the adapter |adapter| changes. If
- // |powered| is true, the adapter radio is turned on, otherwise it's turned
- // off.
- virtual void AdapterPoweredChanged(NfcAdapter* adapter, bool powered) {}
-
- // Called when the "polling" state of the adapter |adapter| changes. If
- // |polling| is true, the adapter is currently polling for remote tags and
- // devices. If false, the adapter isn't polling, either because a poll loop
- // was never started or because a connection with a tag or peer has been
- // established.
- virtual void AdapterPollingChanged(NfcAdapter* adapter, bool polling) {}
-
- // Called when an NFC tag |tag| has been found by the adapter |adapter|.
- // The observer can use this method to take further action on the tag object
- // |tag|, such as reading its records or writing to it. While |tag| will be
- // valid within the context of this call, its life-time cannot be guaranteed
- // once this call returns, as the object may get destroyed if the connection
- // with the tag is lost. Instead of caching the pointer directly, observers
- // should store the tag's assigned unique identifier instead, which can be
- // used to obtain a pointer to the tag, as long as it exists.
- virtual void TagFound(NfcAdapter* adapter, NfcTag* tag) {}
-
- // Called when the NFC tag |tag| is no longer known by the adapter
- // |adapter|. |tag| should not be cached.
- virtual void TagLost(NfcAdapter* adapter, NfcTag* tag) {}
-
- // Called when a remote NFC adapter |peer| has been detected, which is
- // available for peer-to-peer communication over NFC. The observer can use
- // this method to take further action on |peer| such as reading its records
- // or pushing NDEFs to it. While |peer| will be valid within the context of
- // this call, its life-time cannot be guaranteed once this call returns, as
- // the object may get destroyed if the connection with the peer is lost.
- // Instead of caching the pointer directly, observers should store the
- // peer's assigned unique identifier instead, which can be used to obtain a
- // pointer to the peer, as long as it exists.
- virtual void PeerFound(NfcAdapter* adaper, NfcPeer* peer) {}
-
- // Called when the remote NFC adapter |peer| is no longer known by the
- // adapter |adapter|. |peer| should not be cached.
- virtual void PeerLost(NfcAdapter* adapter, NfcPeer* peer) {}
- };
-
- // The ErrorCallback is used by methods to asynchronously report errors.
- typedef base::Closure ErrorCallback;
-
- // Typedefs for lists of NFC peer and NFC tag objects.
- typedef std::vector<NfcPeer*> PeerList;
- typedef std::vector<NfcTag*> TagList;
-
- // Adds and removes observers for events on this NFC adapter. If monitoring
- // multiple adapters, check the |adapter| parameter of observer methods to
- // determine which adapter is issuing the event.
- virtual void AddObserver(Observer* observer) = 0;
- virtual void RemoveObserver(Observer* observer) = 0;
-
- // Indicates whether an underlying adapter is actually present on the
- // system. An adapter that was previously present can become no longer
- // present, for example, if all physical adapters that can back it up were
- // removed from the system.
- virtual bool IsPresent() const = 0;
-
- // Indicates whether the adapter radio is powered.
- virtual bool IsPowered() const = 0;
-
- // Indicates whether the adapter is polling for remote NFC tags and peers.
- virtual bool IsPolling() const = 0;
-
- // Indicates whether the NfcAdapter instance is initialized and ready to use.
- virtual bool IsInitialized() const = 0;
-
- // Requests a change to the adapter radio power. Setting |powered| to true
- // will turn on the radio and false will turn it off. On success, |callback|
- // will be invoked. On failure, |error_callback| will be invoked, which can
- // happen if the radio power is already in the requested state, or if the
- // underlying adapter is not present.
- virtual void SetPowered(bool powered,
- const base::Closure& callback,
- const ErrorCallback& error_callback) = 0;
-
- // Requests the adapter to begin its poll loop to start looking for remote
- // NFC tags and peers. On success, |callback| will be invoked. On failure,
- // |error_callback| will be invoked. This method can fail for various
- // reasons, including:
- // - The adapter radio is not powered.
- // - The adapter is already polling.
- // - The adapter is busy; it has already established a connection to a
- // remote tag or peer.
- // Bear in mind that this method may be called by multiple users of the same
- // adapter.
- virtual void StartPolling(const base::Closure& callback,
- const ErrorCallback& error_callback) = 0;
-
- // Requests the adapter to stop its current poll loop. On success, |callback|
- // will be invoked. On failure, |error_callback| will be invoked. This method
- // can fail if the adapter is not polling when this method was called. Bear
- // in mind that this method may be called by multiple users of the same
- // adapter and polling may not actually stop if other callers have called
- // StartPolling() in the mean time.
- virtual void StopPolling(const base::Closure& callback,
- const ErrorCallback& error_callback) = 0;
-
- // Returns a list containing all known peers in |peer_list|. If |peer_list|
- // was non-empty at the time of the call, it will be cleared. The contents of
- // |peer_list| at the end of this call are owned by the adapter.
- virtual void GetPeers(PeerList* peer_list) const;
-
- // Returns a list containing all known tags in |tag_list|. If |tag_list| was
- // non-empty at the time of the call, it will be cleared. The contents of
- // |tag_list| at the end of this call are owned by the adapter.
- virtual void GetTags(TagList* tag_list) const;
-
- // Returns a pointer to the peer with the given identifier |identifier| or
- // NULL if no such peer is known. If a non-NULL pointer is returned, the
- // instance that it points to is owned by this adapter.
- virtual NfcPeer* GetPeer(const std::string& identifier) const;
-
- // Returns a pointer to the tag with the given identifier |identifier| or
- // NULL if no such tag is known. If a non-NULL pointer is returned, the
- // instance that it points to is owned by this adapter.
- virtual NfcTag* GetTag(const std::string& identifier) const;
-
- protected:
- friend class base::RefCounted<NfcAdapter>;
-
- // The default constructor does nothing. The destructor deletes all known
- // NfcPeer and NfcTag instances.
- NfcAdapter();
- virtual ~NfcAdapter();
-
- // Peers and tags that have been found. The key is the unique identifier
- // assigned to the peer or tag and the value is a pointer to the
- // corresponding NfcPeer or NfcTag object, whose lifetime is managed by the
- // adapter instance.
- typedef std::map<const std::string, NfcPeer*> PeersMap;
- typedef std::map<const std::string, NfcTag*> TagsMap;
-
- // Set the given tag or peer for |identifier|. If a tag or peer for
- // |identifier| already exists, these methods won't do anything.
- void SetTag(const std::string& identifier, NfcTag* tag);
- void SetPeer(const std::string& identifier, NfcPeer* peer);
-
- // Removes the tag or peer for |identifier| and returns the removed object.
- // Returns NULL, if no tag or peer for |identifier| was found.
- NfcTag* RemoveTag(const std::string& identifier);
- NfcPeer* RemovePeer(const std::string& identifier);
-
- // Clear the peer and tag maps. These methods won't delete the tag and peer
- // objects, however after the call to these methods, the peers and tags won't
- // be returned via calls to GetPeers and GetTags.
- void ClearTags();
- void ClearPeers();
-
- private:
- // Peers and tags that are managed by this adapter.
- PeersMap peers_;
- TagsMap tags_;
-
- DISALLOW_COPY_AND_ASSIGN(NfcAdapter);
-};
-
-} // namespace device
-
-#endif // DEVICE_NFC_NFC_ADAPTER_H_
« no previous file with comments | « device/nfc/nfc.gyp ('k') | device/nfc/nfc_adapter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698