|
μHAL (v2.7.9)
Part of the IPbus software repository
|
Go to the documentation of this file.
39 #ifndef _uhal_HwInterface_hpp_
40 #define _uhal_HwInterface_hpp_
47 #include <boost/shared_ptr.hpp>
54 template <
class Y>
class shared_ptr;
91 const std::string&
uri()
const;
97 const std::string&
id()
const;
131 const Node&
getNode (
const std::string& aId )
const;
138 template<
typename T>
139 const T&
getNode (
const std::string& aId )
const;
145 std::vector<std::string>
getNodes()
const;
152 std::vector<std::string>
getNodes (
const std::string& aRegex )
const;
A class which bundles a node tree and an IPbus client interface together providing everything you nee...
void setTimeoutPeriod(const uint32_t &aTimeoutPeriod)
A method to modify the timeout period for any pending or future transactions.
boost::shared_ptr< ClientInterface > mClientInterface
A shared pointer to the IPbus client through which the transactions will be sent.
An abstract base class for defining the interface to the various IPbus clients as well as providing t...
const std::string & id() const
Return the identifier of the target for this client.
HwInterface(const boost::shared_ptr< ClientInterface > &aClientInterface, const boost::shared_ptr< Node > &aNode)
Constructor.
void dispatch()
Make the IPbus client issue a dispatch.
void claimNode(Node &aNode)
A function which sets the HwInterface pointer in the Node to point to this HwInterface.
boost::shared_ptr< Node > mNode
A node tree.
A heirarchical node for navigating heirarchical firmwares.
uint32_t getTimeoutPeriod()
A method to retrieve the timeout period currently being used.
virtual ~HwInterface()
Destructor.
ClientInterface & getClient()
Get the underlying IPbus client.
const std::string & uri() const
Return the url of the target for this client.
std::vector< std::string > getNodes() const
Return all node IDs known to this HwInterface.
const Node & getNode() const
Retrieve the top-level node.