00001 /* SVN FILE INFO 00002 * $Revision: 174 $ : Last Committed Revision 00003 * $Date: 2008-06-24 10:50:29 -0700 (Tue, 24 Jun 2008) $ : Last Committed Date */ 00004 /*[ 00005 * Copyright (c) 2007 Integration Engineering Laboratory 00006 University of California, Davis 00007 * 00008 * Permission to use, copy, and distribute this software and its 00009 * documentation for any purpose with or without fee is hereby granted, 00010 * provided that the above copyright notice appear in all copies and 00011 * that both that copyright notice and this permission notice appear 00012 * in supporting documentation. 00013 * 00014 * Permission to modify the software is granted, but not the right to 00015 * distribute the complete modified source code. Modifications are to 00016 * be distributed as patches to the released version. Permission to 00017 * distribute binaries produced by compiling modified sources is granted, 00018 * provided you 00019 * 1. distribute the corresponding source modifications from the 00020 * released version in the form of a patch file along with the binaries, 00021 * 2. add special version identification to distinguish your version 00022 * in addition to the base release version number, 00023 * 3. provide your name and address as the primary contact for the 00024 * support of your modified version, and 00025 * 4. retain our contact information in regard to use of the base 00026 * software. 00027 * Permission to distribute the released version of the source code along 00028 * with corresponding source modifications in the form of a patch file is 00029 * granted with same provisions 2 through 4 for binary distributions. 00030 * 00031 * This software is provided "as is" without express or implied warranty 00032 * to the extent permitted by applicable law. 00033 ]*/ 00034 00035 #ifndef _AGENT_TASK_H_ 00036 #define _AGENT_TASK_H_ 00037 #include "interpreter_variable_data.h" 00038 #include "data_structures.h" 00039 00040 typedef struct agent_task_s{ 00041 00042 /* boolean stand-in that will dictate whether the task has been completed */ 00043 int task_completed; 00044 int number_of_elements; 00045 int size_of_element_array; 00046 int persistent; 00047 int init_agent_status; 00048 00049 char* var_name; 00050 char* server_name; 00051 char* code_id; 00052 00053 /* data elements */ 00054 interpreter_variable_data_t* agent_return_data; 00055 struct agent_variable_list_s* agent_variable_list; 00056 char** saved_variables; 00057 int num_saved_variables; 00058 00059 } agent_task_t; 00060 00061 typedef agent_task_t* agent_task_p; 00062 00063 agent_task_p 00064 agent_task_New(void); 00065 00066 agent_task_p 00067 agent_task_Copy(agent_task_p task); 00068 00069 int 00070 agent_task_Destroy(agent_task_p agent_task); 00071 #endif