#ifndef morpheo_behavioural_Usage_h
#define morpheo_behavioural_Usage_h

#include <stdint.h>

namespace morpheo {
namespace behavioural {

  typedef uint8_t Tusage_t;

#  define USE_SYSTEMC               0x01
#  define USE_VHDL                  0x02
#  define USE_VHDL_TESTBENCH        0x04
#  define USE_VHDL_TESTBENCH_ASSERT 0x08
#  define USE_POSITION              0x10
#  define USE_STATISTICS            0x20
#  define USE_INFORMATION           0x40
#  define USE_HEADER                0x80
//#define USE_                      0x80

#  define USE_NONE                  0x00
//#define USE_ALL                   0xff
#  define USE_ALL                   usage_all()


  Tusage_t usage_set         (Tusage_t usage, Tusage_t flag);
  Tusage_t usage_unset       (Tusage_t usage, Tusage_t flag);
  bool     usage_is_set      (Tusage_t usage, Tusage_t flag);
  void     usage_environment (Tusage_t usage);
  Tusage_t usage_all         (void);

}; // end namespace behavioural
}; // end namespace morpheo              

#endif

