\section{Library initialization}

Before you can start using the facilities of the BVD library, the
library must initialize some parts of itself.  In SUIF, this is
performed by defining an [[init_]]\emph{libname} routine.  The
respective declarations are:

<<BVD library initialization>>=
extern "C" void init_bvd(SuifEnv*);
@

The BVD library initialization header file has the following
simple layout:

<<init.h>>=
/* file "bvd/init.h" */

<<Machine-SUIF copyright>>

#ifndef BVD_INIT_H
#define BVD_INIT_H

#include <machine/copyright.h>

#ifndef SUPPRESS_PRAGMA_INTERFACE
#pragma interface "bvd/init.h"
#endif

#include <machine/machine.h>

<<BVD library initialization>>

#endif /* BVD_INIT_H */
@

When you extend the library, you may need to add initialization and or
finalization actions to the corresponding implementation file
[[init.cpp]].
