/*************************************/
/* Written by David Yates            */
/* Copyright Siemens IT Systems 2007 */
/*************************************/
#if !defined(AFX_CCCHECK_H__D895F3E1_2518_4A19_84C5_E1FF7230D416__INCLUDED_)
#define AFX_CCCHECK_H__D895F3E1_2518_4A19_84C5_E1FF7230D416__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <windows.h>
#include <string>
using namespace std;

class ccCheck
{
public:
	ccCheck(const string & header = "");
	virtual ~ccCheck();
public:
	void setHeader(const string & header);
	bool checkDevice(int device);
	bool checkIndex(int index);
	bool checkSource(int index);
	bool checkRange(int start, int end);
	bool checkIndexRange(int start, int end);
	bool checkDatabase(int db, int max = 10);
	bool checkV1Database(int db);
	bool checkString(const string &);
	bool checkString(const string &, int);
	bool checkWorkstation(int ws);
	void log(const string & log);
private:
	string m_header;
};

#endif // !defined(AFX_CCCHECK_H__D895F3E1_2518_4A19_84C5_E1FF7230D416__INCLUDED_)
