/***************************************************************************
 *                                                             <110793.1226>
 *    PROJECT:      dVS
 *    SUBSYSTEM:    
 *    MODULE:       
 *
 ***************************************************************************
 *
 *    File:         $RCSfile: vcvbose.h,v $
 *    Revision:     $Revision: 1.1 $
 *    Date:         $Date: 95/05/18 10:24:20 $
 *    Author:       $Author: john $
 *    RCS Ident:    $Id: vcvbose.h,v 1.1 1995/03/10 14:52:46 john Exp $
 *    Creator:      Jon Green.
 *
 *    FUNCTION:
 *
 *
 *    $Log:	vcvbose.h,v $
 * Revision 1.1  95/05/18  10:24:20  10:24:20  john (John Harvey)
 * Initial revision
 * 
 * Revision 1.1  1995/03/10  14:52:46  john
 * Initial revision
 *
 * Revision 0.6  94/10/05  12:51:43  12:51:43  john (John Harvey)
 * Save JH on holiday. - Jon.
 * 
 * Revision 0.5  94/03/30  15:17:49  15:17:49  mark (Mark Greening)
 * New VCActorInit and error routines
 * 
 * Revision 0.4  1993/09/24  11:24:53  jon
 * Release 2.0.4
 *
 * Revision 1.1  93/07/28  14:12:08  jon
 * Initial revision
 * 
 *
 **************************************************************************
 *                                                                        *
 * Copyright (c) 1992 Division Ltd.                                       *
 *                                                                        *
 * All Rights Reserved.                                                   *
 *                                                                        *
 * This Document may not, in whole  or in part, be copied, photocopied,   *
 * reproduced, translated,  or  reduced  to  any  electronic  medium or   *
 * machine readable  form without  prior written  consent from Division   *
 * Ltd.                                                                   *
 *                                                                        *
 *************************************************************************/

/*---	Include Definitions */

#ifndef _VCVBOSE_H
#define _VCVBOSE_H   1

/*---	Include Files */

/*---	External References */

extern void __vcVerboseStart(int level);
extern void __vcDebugStart(int level, char *file, int line);
extern void __vcVerboseMessage(char *format, ...);
extern uint32 __vcverbose_level;
extern uint32 __vcdebug_level;

/*---	Local Macro Definitions */

#define VC_Verbose(x,y)  do {                                        \
                            if (__vcverbose_level & (x))           \
                            {                                       \
                                __vcVerboseStart(x);		    \
                                __vcVerboseMessage y;               \
                            }                                       \
                        } while (0)

#ifdef NVCDEBUG
#undef VC_Debug
#define VC_Debug(x,y) ((void)0)

#else
#define VC_Debug(x,y)  do {                                        	\
                            if (__vcdebug_level & (x))           	\
                            {                                       	\
                                __vcDebugStart(x, __FILE__, __LINE__);	\
                                __vcVerboseMessage y;               	\
                            }                                       	\
                        } while (0)
#endif

#define VCVerbose_SetLevel(x)    (__vcverbose_level = (x))
#define VCVerbose_GetLevel          __vcverbose_level
#define VCDebug_SetLevel(x)    (__vcdebug_level = (x))
#define VCDebug_GetLevel          __vcdebug_level

/*---	Local Type Definitions */

/*---	Local Variable Declarations */

#endif  /* _VCVBOSE_H */
