#include "nrlolsr.h"
#include "protokit.h"

#include <nrlolsr/ns/protolibManetKernel.h>
#include <errno.h>
#include <stdio.h>
#include <signal.h>
#include <ctype.h>
#include <math.h>
#include <cmu-trace.h>
#include <priqueue.h>
#include <red.h>

class NrlolsrAgent : public NsProtoSimAgent 
{
 public:
  NrlolsrAgent();
  bool OnStartup(int argc, const char*const* argv);
  bool ProcessCommands(int argc, const char*const* argv);
  void OnShutdown();
  nsaddr_t GetRoute(SIMADDR dest);
  void recv(Packet *p,Handler *);
  //void recv(Packet *p,Handler *);//not quite sure how this works with protolib?
  Nrlolsr nrlolsrObject;
 private:
  ProtolibManetKernel* protolibManetKernelPointer;
  ProtoRouteMgr* routingTable;
};



