#include <pcap.h>
#include <msp/core/application.h>
#include <msp/debug/profiler.h>
-#include <msp/gbase/display.h>
-#include <msp/gbase/glcontext.h>
-#include <msp/gbase/simplewindow.h>
+#include <msp/graphics/display.h>
+#include <msp/graphics/glcontext.h>
+#include <msp/graphics/simplewindow.h>
#include <msp/gl/color.h>
#include <msp/gl/font.h>
#include <msp/time/timestamp.h>
+class History;
class Host;
class Packet;
class Port;
class Resolver;
-class NetVis: public Msp::Application
+class NetVis: public Msp::RegisteredApplication<NetVis>
{
private:
std::string iface;
std::map<unsigned, Host *> hosts;
std::map<unsigned, Host *> disabled_hosts;
std::list<Packet *> packets;
- std::map<unsigned, Port> ports;
- bool draw_labels;
- bool blend;
+ std::map<unsigned, Port *> ports;
+ History *history;
Msp::Time::TimeStamp tick_t;
Msp::Time::TimeStamp fps_t;
unsigned frames;
float fps;
- Msp::Debug::Profiler profiler;
-
public:
NetVis(int, char **);
~NetVis();
const Msp::GL::Font &get_font() const { return *font; }
const std::map<unsigned, Host *> &get_hosts() const { return hosts; }
+ const std::map<unsigned, Port *> &get_ports() const { return ports; }
private:
virtual void tick();
+ void render();
Host &get_host(unsigned);
Msp::GL::Color generate_color(bool) const;
- const Port &get_port(unsigned);
- void key_press(unsigned, unsigned, wchar_t);
+ Port &get_port(unsigned);
+ void create_history_texture();
static void capture_handler(unsigned char *, const pcap_pkthdr *, const unsigned char *);
void sighandler(int);
-
- static Application::RegApp<NetVis> reg;
};
#endif