SourceForge Project Site
Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

FSMErrorCodes.h

Go to the documentation of this file.
00001 #ifndef _FSMErrorCodes_h_
00002 #define _FSMErrorCodes_h_
00003 
00004 #if _MSC_VER > 1000
00005 #pragma once
00006 #endif // _MSC_VER > 1000
00007 
00008 /*
00009  * The Finite State Machine (FSM) Library
00010  * Copyright (C) 2002 Siemens C-LAB Paderborn
00011  * All rights reserved.
00012  *
00013  * This program is  free  software;  you can redistribute it and/or modify it
00014  * under the terms of the  GNU Lesser General Public License  as published by 
00015  * the  Free Software Foundation;  either version 2.1 of the License,  or (at 
00016  * your option) any later version.
00017  *
00018  * This  program  is  distributed in  the  hope that it will  be useful,  but
00019  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
00020  * or  FITNESS FOR A  PARTICULAR PURPOSE.  See the  GNU Lesser General Public  
00021  * License for more details.
00022  *
00023  * You should  have received  a copy of the GNU Lesser General Public License
00024  * along with  this program;  if not, write to the  Free Software Foundation,
00025  * Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 
00026  */
00027 
00028 // $Log: FSMErrorCodes.h,v $
00029 // Revision 1.1  2002/08/20 14:48:41  vofka
00030 // FiniteStateMachine-config.h removed from installing. Loading exported to the loader class. Saver introduced. Error codes exported to FSMErrorCodes.
00031 //
00032 
00033 #ifdef HAVE_LIBIERROR
00034         #include <iError.h>
00035         namespace FSM {
00036                 using iERR::iError;
00037                 using iERR::iErrorCode;
00038                 using iERR::GENERIC;
00039         };
00040 #else
00041         #define INFO(err) 1
00042         #define WARNING(err) 2
00043         #define CRITICAL(err) 3
00044         #define EXCEPTION(err) 4
00045         #define iHandleLastError() 
00046         #define iRethrow() 
00047         class iErrorCode {public: iErrorCode(const char *) {};};
00048         inline void iThrow(int, ...) {}; 
00049 #endif
00050 
00051 
00052 namespace FSM {
00053         extern iErrorCode FSM_UNKNOWN_CONDITION_VALUE;
00054         extern iErrorCode FSM_OPEN_FILE_FAILED;
00055         extern iErrorCode FSM_LOAD_STARTED;
00056         extern iErrorCode FSM_LOAD_NOT_IMPLEMENTED;
00057         extern iErrorCode FSM_TRANSITION_NOT_FOUND;
00058         extern iErrorCode FSM_ACTION_NOT_FOUND;
00059         extern iErrorCode FSM_CONDITION_NOT_FOUND;
00060         extern iErrorCode FSM_STATE_DEFINED_TWICE;
00061         extern iErrorCode FSM_STATE_NOT_FOUND;
00062         extern iErrorCode FSM_CANNOT_DELETE_CURRENT;
00063         extern iErrorCode FSM_VARAIBLE_DEFINED_TWICE;
00064         extern iErrorCode FSM_VARIABLE_NOT_FOUND;
00065         extern iErrorCode FSM_INITIAL_AFTER_START;
00066         extern iErrorCode FSM_ALREADY_STARTED;
00067         extern iErrorCode FSM_NOT_STARTED;
00068         extern iErrorCode FSM_CLEAR_STARTED;
00069         extern iErrorCode FSM_TAG_NOT_FOUND;
00070         extern iErrorCode FSM_MISSED_ATTRIBUTE;
00071         extern iErrorCode FSM_UNKNOWN_TAG;
00072         extern iErrorCode FSM_UNKNOWN_PARAM;
00073         extern iErrorCode FSM_UNKNOWN_CONDITION_VALUE;
00074         extern iErrorCode FSM_UNKNOWN_CONDITION;
00075         extern iErrorCode FSM_PARAM_NOT_SET;
00076         extern iErrorCode FSM_CLASS_REGISTERED_TWICE;
00077         extern iErrorCode FSM_CANNOT_CREATE_CLASS;
00078         extern iErrorCode FSM_PARAM_NOT_READ;
00079 }; // namespace FSM
00080 
00081 #endif // ifndef _FSMErrorCodes_h_

© 2002 by C-LAB
generated by doxygen