26 #ifndef NFD_DAEMON_FACE_FACE_SYSTEM_HPP
27 #define NFD_DAEMON_FACE_FACE_SYSTEM_HPP
31 #include <ndn-cxx/net/network-address.hpp>
32 #include <ndn-cxx/net/network-interface.hpp>
33 #include <ndn-cxx/net/network-monitor.hpp>
45 class ProtocolFactory;
46 struct ProtocolFactoryCtorParams;
64 [[nodiscard]] std::set<const ProtocolFactory*>
115 processConfig(
const ConfigSection& configSection,
bool isDryRun,
116 const std::string& filename);
121 std::map<std::string, unique_ptr<ProtocolFactory>> m_factories;
122 unique_ptr<NetdevBound> m_netdevBound;
129 std::map<std::string, ProtocolFactory*> m_factoryByScheme;
132 shared_ptr<ndn::net::NetworkMonitor> m_netmon;
Configuration file parsing utility.
Context for processing a config section in ProtocolFactory.
GeneralConfig generalConfig
Entry point of NFD's face system.
std::set< const ProtocolFactory * > listProtocolFactories() const
Returns all ProtocolFactory objects owned by the face system.
ProtocolFactory * getFactoryById(const std::string &id) const
FaceSystem(FaceTable &faceTable, shared_ptr< ndn::net::NetworkMonitor > netmon)
FaceTable & getFaceTable()
bool hasFactoryForScheme(const std::string &scheme) const
ProtocolFactory * getFactoryByScheme(const std::string &scheme) const
void setConfigFile(ConfigFile &configFile)
Register handler for the face_system section of NFD's configuration file.
Provides support for an underlying protocol.
#define NFD_PUBLIC_WITH_TESTS_ELSE_PRIVATE
boost::property_tree::ptree ConfigSection
A configuration file section.
Configuration options from general section.
bool wantCongestionMarking
Parameters to ProtocolFactory constructor.