#ifndef _OSUTILS_H
#define _OSUTILS_H

#include <stdio.h>
///////////////////////////////////
//OS dependent includes for utilities
///////////////////////////////////
#ifdef _VXWORKS_
#include <vxWorks.h>
#include <logLib.h>
#include <taskLib.h>
#endif //_VXWORKS_

#ifdef _WIN32_
#endif //_WIN32_

#include "file.h"
#include "types.h"
///////////////////////////////////
//Various functions for VxWorks
///////////////////////////////////
#ifdef _VXWORKS_
extern "C" char *strdup(const char *src);
#endif //_VXWORKS_

#include "types.h"
class Utility  
{
public:
	Utility();
	
	// Returns 1 is key it hit else returns 0
	// Does not pend on key hit
	static int keyhit();

	// Returns ASCII character if key was hit
	// Will pend until key is hit(VXWORKS only)
	static int getChar();

	virtual ~Utility();
	// Zero <n> bytes of memory starting at pointer <s>
	static void bzero( void *s, int n );
	
	// Delays processing <clkticks>
	static void sleep( Nat32 clkticks );

	// Delays processing <milliSecs>
	static void delay( Nat32 milliSecs );
};
#endif
