next up previous contents
Next: map_list Instantiation Up: The map_list Class Previous: map_list Class Variables

map_list Class Methods

Note, the map_list class only stores mapping/parameter information/values. The actual mapping is done by the kernel.

The methods to add mapping information to a map_list instance use a parameter formal of type string to address the formal generic parameter of formal signal port. Actually, the string takes the name of the corresponding formal with all characters converted to lowercase. Further a ``:'' is prepended. Note, beside the colon the string stores the real name of the formal as it appears in the VHDL source.

Besides of the methods internally used by the simulation kernel the following methods exists:

Methods Description
map_list() Constructor to create an empty ``map_list'' instance.
void generic_map(string formal,
        acl *formal_acl,
        void *value,
        type_info_interface *type)
Stores a value for a formal generic parameter. ``formal'' is the name of the formal parameter prepended with ``:''. ``type'' is the type of the parameter ``value''. If the generic parameter is of a composite type ``formal_acl'' determines the element(s) which are assigned a value. If the formal is scalar ``formal_acl'' is set to NULL.
void generic_map(string formal,
        acl *formal_acl)
This method is called to leave a generic parameter OPEN. ``formal'' is the name of the formal parameter prepended with ``:''. If the generic parameter is of a composite type ``formal_acl'' determines the element(s) to be left open. If the formal is scalar ``formal_acl'' is set to NULL.
void signal_map(string formal,
        acl *formal_acl,
        sig_info_base *actual,
        acl *actual_acl)
Stores information to map a formal to an actual signal. ``formal'' is the name of the formal port prepended with ``:''. If the formal port is of a composite type ``formal_acl'' determines the element(s) which are associated with the actuals. If the formal is scalar ``formal_acl'' is set to NULL. If the actual is of a composite type ``actual_acl'' determines the element(s) which are associated with the formal. If the formal is scalar ``actual_acl'' is set to NULL.
void signal_map(string formal,
        acl *formal_acl,
        void *value,
        type_info_interface *type)
Stores information to map a formal port signal to a constant value. ``formal'' is the name of the formal port prepended with ``:''. If the formal port is of a composite type ``formal_acl'' determines the element(s) which are associated with the constant value. If the formal is scalar ``formal_acl'' is set to NULL. ``value'' is the value to be assigned and ``type'' its type. Note, similar to generic parameters a permanent copy of value created and mapped to the formal signal. Hence, the value may be destroyed after calling this method.
void signal_map(string formal,
        acl *formal_acl)
Stores information to leave a port signal open. ``formal'' is the name of the formal port prepended with ``:''. If the formal port is of a composite type ``formal_acl'' determines the element(s) which should be left open. If the formal is scalar ``formal_acl'' is set to NULL.
void signal_map(string formal,
        acl *formal_acl,
        void (*wrapper_fn_formal)
                (void *,void *),
        sig_info_base *actual,
        acl *actual_acl)
Stores information to map a formal to an actual signal. ``formal'' is the name of the formal port prepended with ``:''. If the formal port is of a composite type ``formal_acl'' determines the element(s) which are associated with the actuals. If the formal is scalar ``formal_acl'' is set to NULL. If the actual is of a composite type ``actual_acl'' determines the element(s) which are associated with the formal. If the actual is scalar ``actual_acl'' is set to NULL. Additionally, the formal signal is associated with an conversion function. ``wrapper_fn_formal'' is a wrapper function which will be used by the kernel to execute the conversion function.
void signal_map(string formal,
        acl *formal_acl,
        sig_info_base *actual,
        acl *actual_acl,
        void (*wrapper_fn_actual)
                (void *,void *))

Stores information to map a formal to an actual signal. ``formal'' is the name of the formal port prepended with ``:''. If the formal port is of a composite type ``formal_acl'' determines the element(s) which are associated with the actuals. If the formal is scalar ``formal_acl'' is set to NULL. If the actual is of a composite type ``actual_acl'' determines the element(s) which are associated with the formal. If the actual is scalar ``actual_acl'' is set to NULL. Additionally, the actual signal is associated with an conversion function. ``wrapper_fn_actual'' is a wrapper function which will be used by the kernel to execute the conversion function.
void signal_map(string formal,
        acl *formal_acl,
        void (*wrapper_fn_formal)
                (void *,void *),
        sig_info_base *actual,
        acl *actual_acl,
        void (*wrapper_fn_actual)
                (void *,void *))

Stores information to map a formal to an actual signal. ``formal'' is the name of the formal port prepended with ``:''. If the formal port is of a composite type ``formal_acl'' determines the element(s) which are associated with the actuals. If the formal is scalar ``formal_acl'' is set to NULL. If the actual is of a composite type ``actual_acl'' determines the element(s) which are associated with the formal. If the actual is scalar ``actual_acl'' is set to NULL. Additionally, the formal signal as well as the actual signal are associated with an conversion function. ``wrapper_fn_formal'' is a wrapper function associated with the formal while ``wrapper_fn_actual'' is the associated with the actual. The functions will be used by the kernel to execute the conversions.
   

Note, the mechanisms to build an execute the conversion functions are actually not defined yet.


next up previous contents
Next: map_list Instantiation Up: The map_list Class Previous: map_list Class Variables

1998-11-17