Jump to content
ecco

Enumeration tracing

Recommended Posts

I'm trying to keep track of an enumeration... the code is pretty simple:

 

 

   public:
      enum req_type_t
      {
         DMA_WRITE,
         DMA_READ,
         LAT_WRITE,
         LAT_READ,
         NONE // Used to intialize the variable when the constructor is called without parameters
      };
 
      inline friend void sc_trace(sc_trace_file *tf, const req & m, const std::string & NAME )
      {
         const char* names[] = {"WRITE", "READ", "LAT_WRITE", "LAT_READ", "NONE"};
         sc_trace(tf, m.req_type, NAME+".req_type", names);
      (...)

 

When I run it tells me that enum tracing is deprecated... what is the current enum tracing method?
 
mofo@mofobox:~/controller$ ./main 
 
             SystemC 2.3.0-ASI --- Jun 13 2013 15:06:45
        Copyright © 1996-2012 by all Contributors,
        ALL RIGHTS RESERVED
 
Note: VCD trace timescale unit is set by user to 1.000000e-10 sec.
 
Info: (I804) /IEEE_Std_1666/deprecated: tracing of enumerated literals is deprecated
 
Info: (I804) /IEEE_Std_1666/deprecated: You can turn off warnings about
             IEEE 1666 deprecated features by placing this method call as the
             first statement in your sc_main() function:
 
  sc_report_handler::set_actions("/IEEE_Std_1666/deprecated", SC_DO_NOTHING);
 
 
 

Share this post


Link to post
Share on other sites

As far as I know there isn't one.

 

sc_trace of enumeration types was already deprecated in 1666-2005.

 

I suppose part of the problem is that VCD itself doesn't support enumeration types (I'm assuming VCD as defined in 1364-2001).

 

regards

Alan

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×