VOV Instrumentation Library (VIL)
VIL: The Basic Procedures
The essential functions in the VOV C library, together with the few common utilities, allow for the easy instrumentation of tools. VIL can be used with either C or C++ programs.
Type | Procedure | Args | Description |
---|---|---|---|
void | VovBegin | (int argc, char** argv) | Starts a channel and opens a connection to it. We recommend the use of VovConnect() instead of this procedure. |
void | VovConnect | (void) | Connects to an existing channel, if available, that is if the current process is a child of a wrapper that activated runtime tracing, such as vrt or vov. |
int | VovBarrier | (char* db, char* file, char* action) | Declares an output barrier. The third argument action can be either "STOP" or "PROPAGATE". Used by "smart tools" to inform the server whether there are changes propagating to the output. The argument ACTION is either PROPAGATE or STOP. For more information, see Runtime Change Propagation Control. |
VovStatus | VovExecutable | (char* exec) | Declares an input taking advantage of the PATH search mechanism.
Equivalent to VovInput("FILE",true_exec) , where
true_exec is the full path of the executable
exec as produced by the PATH search mechanism. If
true_exec cannot be found, an error condition
is raised, causing termination of the run. |
FILE* | VovFopen | (char* fname, char* mode) | Replacement for fopen(). |
VovStatus | VovInput | (char* db, char* name) | Generic input declaration. |
VovStatus | VovInputFile | (char* name) | Declares an input file. |
VovStatus | VovOutput | (char* db, char* name) | Generic output declaration. |
VovStatus | VovOutputFile | (char* name) | Declares an output file. |
void | VovFinish | (int status) | Closes connection with channel. |
void | VovEnd | (int status) | Closes connection and calls exit(). Use this only if in conjunction with VovBegin(). |
VovStatus | VovInputWithFlags | (const char* db, const char* name, int flags) | Offers the most complete interface to declare an input in an
instrumented tool. The flags argument is the OR'ing of the following
flags defined in vil.h:
|
VovStatus | VovOutputWithFlags | (const char* db, const char* name, int flags) | The procedure
VovOutputWithFlags(db,name,flags) offers the
most complete interface to declare an output in an instrumented
tool. The flags argument is the OR'ing of the following flags
defined in vil.h:
|