/**********************************************************************
 
	Copyright (C) 2003-2004
	Hirohisa MORI <joshua@nichibun.ac.jp>
	Tomoki SEKIYAMA <sekiyama@yahoo.co.jp>
 
	This program is free software; you can redistribute it 
	and/or modify it under the terms of the GLOBALBASE 
	Library General Public License (G-LGPL) as published by 

	http://www.globalbase.org/
 
	This program is distributed in the hope that it will be 
	useful, but WITHOUT ANY WARRANTY; without even the 
	implied warranty of MERCHANTABILITY or FITNESS FOR A 
	PARTICULAR PURPOSE.

**********************************************************************/



#ifndef ___V_ERRORS_H___
#define ___V_ERRORS_H___


enum VError
{
	V_ER_NO_ERR = 0,
	V_ER_CANT_SET = -1000,
	V_ER_PARAM = -1001,
	V_ER_MAX_CHILDREN = -1002,
	V_ER_NOT_FOUND = -1003,
	V_ER_ALREADY = -1004,
	V_ER_DESTROYED = -1005,
	V_ER_PARENT = -1006,
	V_ER_NOT_SUPPORT = -1007,
	V_ER_INVALID_MODE = -1008,
	V_ER_CANT_GET = -1009,
	V_ER_NO_DISPLAY = -1101,
	V_ER_NOT_READY = -1102,
	V_ER_FLAGS_CONBINATION = -1103
};

typedef struct VExError {
	enum VError	code;
	int		subcode1;
	int		subcode2;
} VExError;

VExError initial_VExError(enum VError,int,int);
VExError merge_VExError_vstatus_type(VExError,VExError);

#endif
