multiplexer

Synopsis

A multiplexer for integer numbers. Uses an input number to trigger a single output port.

Input Ports

Name Type Description

In int Index number which indicates which output port should be activated.

Output Ports

Name Type Description

Out1 ... Out10 int Out<num> will be activated if Inval==num

Description

This simple functional macro is used to trigger one of its output ports whenever it receives something on its input port. If an integer <num> between 1 and 10 arrives at the In port, it is passed to the output Port Out<num>.

This module is particularly important within the Visit interface project because it allows the IDs output by the visitserver macro to trigger the appropriate reader or writer modules. If your application requires more than 10 IDs you can use multiple Multiplexer modules and specify the connection to the VisitServer with 'Trigger - 10' (or similar). The Multiplexer will then act on trigger values 11 to 20.

The Visit IAC project assumes that the VISIT library has been installed into the default directory i.e.

/usr/local/visit/

If this is not the case then the references to that directory in the visit_mods.v file will have to be modified.

This functional macro is only provided for completeness. It is a very thin wrapper around the low-level Multiplexer module. Therefore the Multiplexer module should normally be used.

Inputs

In

This integer input port gives the index number which indicates which output port should be activated.

Outputs

Out1 ... Out10

Depending on the value of the input port In one of these output ports will be activated.

Utility Modules

The Functional Macro multiplexer is only a wrapper around the low-level module Multiplexer. All input and output ports of this module are directly connected to the macro ports.

Example

Examples of the use of the low-level Mulitplexer module can be found in the VisitSimpleEg and VisitGoLEg example applications.

Files

iac_proj/visit/visit_macs.v contains the V definition of the functional macro multiplexer.

Other Notes

The VisitMacs library inherits its process. As this library contains no procedural code, the process is not important. The modules in the low-level VisitMods library execute under the process specified in that library, not the process defined in the high-level library. By default the express process will be used.

Before the Visit project can be compiled the VISIT library must be installed, configured and compiled. For full instructions please see the VISIT library web-site.

The Visit IAC project assumes that the VISIT library has been installed into the default directory i.e.

/usr/local/visit/

If this is not the case then the references to that directory in the visit_mods.v file will have to be modified.

Author

Wolfgang Frings
Central Institute for Applied Mathematics
Research Center Juelich
D-52425 Juelich
Germany

Modifications

Ma YingLiang,
Manchester Visualization Centre
Andrew Dodd,
International AVS Centre

Contact

Wolfgang Frings
Central Institute for Applied Mathematics
Forschungszentrum Juelich GmbH
D-52425 Juelich
Germany
E-mail: W.Frings@fz-juelich.de
International AVS Centre Manchester Visualization Centre Manchester Computing University of Manchester Oxford Road Manchester United Kingdom M13 9PL E-mail: avs@iavsc.org

See Also