CERN org.glite.Gfal
2.0.1
|
00001 #pragma once 00002 /* 00003 * Copyright (c) Members of the EGEE Collaboration. 2004. 00004 * See http://www.eu-egee.org/partners/ for details on the copyright holders. 00005 * 00006 * Licensed under the Apache License, Version 2.0 (the "License"); 00007 * you may not use this file except in compliance with the License. 00008 * You may obtain a copy of the License at 00009 * 00010 * http://www.apache.org/licenses/LICENSE-2.0 00011 * 00012 * Unless required by applicable law or agreed to in writing, software 00013 * distributed under the License is distributed on an "AS IS" BASIS, 00014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00015 * See the License for the specific language governing permissions and 00016 * limitations under the License. 00017 */ 00018 00019 /*** 00020 * @brief gfal_types.h 00021 * @author Adrien Devresse 00022 * types declaration for gfal 00023 * */ 00024 #ifndef _GFAL_TYPES_H 00025 #define _GFAL_TYPES_H 00026 00027 00028 00029 #include <unistd.h> 00030 #include <glib.h> 00031 #include <sys/types.h> 00032 #include <dirent.h> 00033 #include <sys/stat.h> 00034 #include <attr/xattr.h> 00035 00036 #include <common/gfal_prototypes.h> 00037 #include <common/gfal_constants.h> 00038 #include <common/gfal_common_plugin_interface.h> 00039 00040 00041 /* enforce proper calling convention */ 00042 #ifdef __cplusplus 00043 extern "C" 00044 { 00045 #endif 00046 00047 00058 struct _gfal_descriptors_container{ 00059 gfal_fdesc_container_handle dir_container; 00060 gfal_fdesc_container_handle file_container; 00061 00062 }; 00063 00064 struct _gfal_conf_container{ 00065 GData* conf; 00066 GMutex* mux; 00067 }; 00068 00069 00070 00071 struct gfal_handle_ { // define the protocole version of SRM choosen by default 00072 gboolean initiated; // 1 if initiated, else error 00073 // struct of the plugin opts 00074 struct _plugin_opts plugin_opt; 00075 //struct for the file descriptors 00076 gfal_descriptors_container fdescs; 00077 int no_bdii_check; 00078 gfal_conf_container st_config; 00079 }; 00080 00081 00082 00083 00084 00085 #ifdef __cplusplus 00086 } 00087 #endif 00088 00089 #endif