Main Page   Class Hierarchy   Compound List   File List   Compound Members  

C_CommandActionFactory.cpp

00001 /*
00002  *  This program is free software; you can redistribute it and/or modify
00003  *  it under the terms of the GNU General Public License as published by
00004  *  the Free Software Foundation; either version 2 of the License, or
00005  *  (at your option) any later version.
00006  *
00007  *  This program is distributed in the hope that it will be useful,
00008  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00009  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00010  *  GNU General Public License for more details.
00011  *
00012  *  You should have received a copy of the GNU General Public License
00013  *  along with this program; if not, write to the Free Software
00014  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00015  *
00016  * (c)Copyright 2006 Hewlett-Packard Development Company, LP.
00017  *
00018  */
00019 
00020 
00021 #include "C_CommandActionFactory.hpp"
00022 #include "C_StoreAction.hpp"
00023 #include "C_ReStoreAction.hpp"
00024 #include "C_StartTimerAction.hpp"
00025 #include "C_StopTimerAction.hpp"
00026 #include "C_SetValueAction.hpp"
00027 #include "C_IncCounterAction.hpp"
00028 #include "C_CheckPresenceAction.hpp"
00029 #include "C_GetExternalDataAction.hpp"
00030 #include "C_IncVarAction.hpp"
00031 #include "C_CheckValueAction.hpp"
00032 #include "C_CheckOrderAction.hpp"
00033 #include "C_SetNewSessionIdAction.hpp"
00034 #include "C_InternalInitDoneAction.hpp"
00035 #include "C_CheckAllMsgAction.hpp"
00036 #include "C_AddInCallMapAction.hpp"
00037 #include "C_SelectExternalDataLineAction.hpp"
00038 #include "C_OpenAction.hpp"
00039 #include "C_CloseAction.hpp"
00040 #include "C_TransportOptionAction.hpp"
00041 #include "C_SetBitAction.hpp"
00042 #include "C_SetValueBitAction.hpp"
00043 #include "C_GetExternalDataActionToMem.hpp"
00044 #include "C_SetValueActionMethodExtern.hpp"
00045 
00046 
00047 
00048 #include "Utils.hpp"
00049 
00050 C_CommandActionFactory::C_CommandActionFactory(T_pControllers P_controllers) {
00051   m_controllers = *P_controllers ;
00052 }
00053 
00054 C_CommandActionFactory::~C_CommandActionFactory() {
00055 }
00056 
00057 C_CommandAction* C_CommandActionFactory::create(T_CmdAction P_cmdAction) {
00058 
00059   C_CommandAction* L_action = NULL ;
00060   
00061   switch (P_cmdAction.m_type) {
00062 
00063   case E_ACTION_SCEN_OPEN:
00064     NEW_VAR(L_action, 
00065             C_OpenAction(P_cmdAction,&m_controllers));
00066     break ;
00067   case E_ACTION_SCEN_CLOSE:
00068     NEW_VAR(L_action, 
00069             C_CloseAction(P_cmdAction,&m_controllers));
00070     break ;
00071   case E_ACTION_SCEN_MEMORY_STORE:
00072     NEW_VAR(L_action, 
00073             C_StoreAction(P_cmdAction,&m_controllers));
00074     break ;
00075   case E_ACTION_SCEN_MEMORY_RESTORE:
00076     NEW_VAR(L_action, 
00077             C_ReStoreAction(P_cmdAction,&m_controllers));
00078     break ;
00079   case E_ACTION_SCEN_START_TIMER:
00080     NEW_VAR(L_action, 
00081             C_StartTimerAction(P_cmdAction,&m_controllers));
00082     break ;
00083   case E_ACTION_SCEN_STOP_TIMER:
00084     NEW_VAR(L_action, 
00085             C_StopTimerAction(P_cmdAction,&m_controllers));
00086     break ;
00087   case E_ACTION_SCEN_SET_VALUE:
00088     NEW_VAR(L_action, 
00089             C_SetValueAction(P_cmdAction,&m_controllers));
00090     break ;
00091   case E_ACTION_SCEN_INC_COUNTER:
00092     NEW_VAR(L_action, 
00093             C_IncCounterAction(P_cmdAction,&m_controllers));
00094     break ;
00095   case E_ACTION_SCEN_CHECK_PRESENCE:
00096     NEW_VAR(L_action, 
00097             C_CheckPresenceAction(P_cmdAction,&m_controllers));
00098     break ;
00099   case E_ACTION_SCEN_GET_EXTERNAL_DATA:
00100     NEW_VAR(L_action, 
00101             C_GetExternalDataAction(P_cmdAction,&m_controllers));
00102     break ;
00103   case E_ACTION_SCEN_INC_VAR:
00104     NEW_VAR(L_action, 
00105             C_IncVarAction(P_cmdAction,&m_controllers));
00106     break ;
00107   case E_ACTION_SCEN_CHECK_VALUE:
00108     NEW_VAR(L_action, 
00109             C_CheckValueAction(P_cmdAction,&m_controllers));
00110     break ;
00111   case E_ACTION_SCEN_CHECK_ORDER:
00112     NEW_VAR(L_action, 
00113             C_CheckOrderAction(P_cmdAction,&m_controllers));
00114     break ;
00115   case E_ACTION_SCEN_SET_NEW_SESSION_ID:
00116     NEW_VAR(L_action, 
00117             C_SetNewSessionIdAction(P_cmdAction,&m_controllers));
00118     break ;
00119   case E_ACTION_SCEN_INTERNAL_INIT_DONE:
00120     NEW_VAR(L_action, 
00121             C_InternalInitDoneAction(P_cmdAction,&m_controllers));
00122     break ;
00123   case E_ACTION_SCEN_CHECK_ALL_MSG:
00124     NEW_VAR(L_action, 
00125             C_CheckAllMsgAction(P_cmdAction,&m_controllers));
00126     break ;
00127   case E_ACTION_SCEN_ADD_IN_CALL_MAP:
00128     NEW_VAR(L_action, 
00129             C_AddInCallMapAction(P_cmdAction,&m_controllers));
00130     break ;
00131   case E_ACTION_SCEN_SELECT_EXTERNAL_DATA_LINE:
00132     NEW_VAR(L_action, 
00133             C_SelectExternalDataLineAction(P_cmdAction,&m_controllers));
00134     break ;
00135 
00136   case E_ACTION_SCEN_TRANSPORT_OPTION:
00137     NEW_VAR(L_action, 
00138             C_TransportOptionAction(P_cmdAction,&m_controllers));
00139     break ;
00140 
00141   case E_ACTION_SCEN_SET_BIT:
00142     NEW_VAR(L_action, 
00143             C_SetBitAction(P_cmdAction,&m_controllers));
00144     break ;
00145 
00146   case E_ACTION_SCEN_SET_VALUE_BIT:
00147     NEW_VAR(L_action, 
00148             C_SetValueBitAction(P_cmdAction,&m_controllers));
00149     break ;
00150 
00151   case E_ACTION_SCEN_GET_EXTERNAL_DATA_TO_MEM:
00152     NEW_VAR(L_action, 
00153             C_GetExternalDataActionToMem(P_cmdAction,&m_controllers));
00154     break ;
00155 
00156   case E_ACTION_SCEN_SET_VALUE_METHOD_EXTERN:
00157     NEW_VAR(L_action, 
00158             C_SetValueActionMethodExtern(P_cmdAction,&m_controllers));
00159     break ;
00160 
00161   default :
00162     break ;
00163   }
00164 
00165   return(L_action);
00166 }

Generated on Wed Mar 7 14:44:49 2007 for Seagull by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002