#ifndef Foundation_Init_Init_INCLUDED
#define Foundation_Init_Init_INCLUDED

#include <map>

namespace Tn {

namespace Foundation {

typedef void (*FuncPtr)(bool);

struct Init {

  Init(FuncPtr);
  ~Init();

 private:

  typedef std::map<FuncPtr,int> CountMap;

  CountMap::iterator iterator;
  static CountMap* count_map;
};


} // namespace Foundation

} // namespace Tn


#endif
