26 #ifndef NFD_DAEMON_FACE_FACE_SYSTEM_HPP
27 #define NFD_DAEMON_FACE_FACE_SYSTEM_HPP
32 #include <ndn-cxx/net/network-address.hpp>
33 #include <ndn-cxx/net/network-interface.hpp>
34 #include <ndn-cxx/net/network-monitor.hpp>
43 class ProtocolFactory;
44 struct ProtocolFactoryCtorParams;
62 [[nodiscard]] std::set<const ProtocolFactory*>
111 processConfig(
const ConfigSection& configSection,
bool isDryRun,
112 const std::string& filename);
117 std::map<std::string, unique_ptr<ProtocolFactory>> m_factories;
118 unique_ptr<NetdevBound> m_netdevBound;
125 std::map<std::string, ProtocolFactory*> m_factoryByScheme;
128 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.
FaceSystem(FaceTable &faceTable, shared_ptr< ndn::net::NetworkMonitor > netmon)
FaceTable & getFaceTable()
bool hasFactoryForScheme(const std::string &scheme) const
void setConfigFile(ConfigFile &configFile)
Register handler for the face_system section of NFD's configuration file.
ProtocolFactory * getFactoryById(const std::string &id)
ProtocolFactory * getFactoryByScheme(const std::string &scheme)
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.