#ifndef __JoinPointMonitor_h___
#define __JoinPointMonitor_h___

#include "JoinPointInfo.h"

// perhaps these includes should go to config.h?
#include "ListAdviceContainer.h"
#include "SimpleAdviceContainer.h"

// variant managment system will choose which Container Variant our Monitor
// shall use. for now, we #define this by hand

#ifndef AdviceContainer
#error Please set the macro AdviceContainer
#endif

template<int JPID, int REPOID>
struct JoinPointMonitor {
  typedef AdviceContainer<JPID, REPOID> Container;
  typedef typename AdviceContainer<JPID, REPOID>::ADJP ADJP;
  typedef typename AdviceContainer<JPID, REPOID>::DJP DJP;
}; 

#endif
