blob: 217d6317dda5d37b5e74982add8963838ddcd4e4 [file] [log] [blame]
Steve DiBenedetto5b433982014-01-29 17:14:27 -07001/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2/**
3 * Copyright (C) 2014 Named Data Networking Project
4 * See COPYING for copyright and distribution information.
5 */
6
7#ifndef NFD_MGMT_INTERNAL_FACE_HPP
8#define NFD_MGMT_INTERNAL_FACE_HPP
9
10#include "face/face.hpp"
11#include "app-face.hpp"
12
13namespace nfd {
14
Steve DiBenedetto042bfe92014-01-30 15:05:08 -070015class FibManager;
16
Steve DiBenedetto5b433982014-01-29 17:14:27 -070017class InternalFace : public Face, public AppFace
18{
19public:
20
Steve DiBenedetto3970c892014-01-31 23:31:13 -070021 InternalFace();
Steve DiBenedetto5b433982014-01-29 17:14:27 -070022
23 // Overridden Face methods for forwarder
24
25 virtual void
26 sendInterest(const Interest& interest);
27
28 virtual void
29 sendData(const Data& data);
30
31 // Methods implementing AppFace interface. Do not invoke from forwarder.
32
33 virtual void
34 setInterestFilter(const Name& filter,
35 OnInterest onInterest);
36
37 virtual void
38 put(const Data& data);
39
40 virtual
41 ~InternalFace();
42
43private:
44
45 // void
46 // onConfig(ConfigFile::Node section, bool isDryRun);
47
48 std::map<Name, OnInterest> m_interestFilters;
Steve DiBenedetto5b433982014-01-29 17:14:27 -070049};
50
51} // namespace nfd
52
53#endif //NFD_MGMT_INTERNAL_FACE_HPP