Grid Community Toolkit  6.2.1541705016
globus_common.h
Go to the documentation of this file.
1 /* library/globus_common.h. Generated by configure. */
2 /*
3  * Copyright 1999-2006 University of Chicago
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
23 #if !defined(GLOBUS_INCLUDE_GLOBUS_COMMON_H)
24 #define GLOBUS_INCLUDE_GLOBUS_COMMON_H 1
25 
26 #ifndef EXTERN_C_BEGIN
27 # ifdef __cplusplus
28 # define EXTERN_C_BEGIN extern "C" {
29 # define EXTERN_C_END }
30 # else
31 # define EXTERN_C_BEGIN
32 # define EXTERN_C_END
33 # endif
34 #endif
35 
36 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
37 
41 #endif
42 
66 #include "globus_common_include.h"
67 #include "globus_module.h"
68 #include "globus_url.h"
69 #include "globus_list.h"
70 #include "globus_hashtable.h"
71 #include "globus_fifo.h"
72 #include "globus_symboltable.h"
73 #include "globus_object.h"
74 #include "globus_object_hierarchy.h"
75 #include "globus_error.h"
76 #include "globus_error_hierarchy.h"
77 #include "globus_thread.h"
78 #include "globus_time.h"
79 #include "globus_thread_pool.h"
80 #include "globus_handle_table.h"
81 #include "globus_callback.h"
82 #include "globus_logging.h"
83 #include "globus_memory.h"
84 #include "globus_print.h"
85 #include "globus_tilde_expand.h"
86 #include "globus_libc.h"
87 #include "globus_priority_q.h"
88 #include "globus_range_list.h"
89 #include "globus_debug.h"
90 #include "globus_args.h"
91 #include "globus_strptime.h"
92 #include "globus_thread_common.h"
93 #include "globus_thread_rw_mutex.h"
94 #include "globus_thread_rmutex.h"
95 #include "globus_error_errno.h"
96 #include "globus_error_generic.h"
97 #include "globus_extension.h"
98 #include "globus_uuid.h"
99 #include "globus_options.h"
100 #include "globus_states.h"
101 
102 #ifdef __cplusplus
103 extern "C" {
104 #endif
105 
106 /* most network-related functions (getpeername, getsockname,...) have
107  an int* as argument, except AIX which uses size_t*. This will
108  masquerade the difference. */
109 #if defined(__HOS_AIX__)
110 #define globus_netlen_t size_t
111 #else
112 #define globus_netlen_t int
113 #endif
114 
115 /*
116  * globus_barrier_t
117  *
118  * A generic barrier structure */
119 typedef struct globus_barrier_s
120 {
121  globus_mutex_t mutex;
122  globus_cond_t cond;
123  int count;
124 } globus_barrier_t;
125 
126 
127 /******************************************************************************
128  Define constants
129 ******************************************************************************/
130 
131 /******************************************************************************
132  Module activation structure
133 ******************************************************************************/
134 extern globus_module_descriptor_t globus_i_common_module;
135 
140 #define GLOBUS_COMMON_MODULE (&globus_i_common_module)
141 
142 
143 /******************************************************************************
144  i18n
145 ******************************************************************************/
146 
147 extern globus_extension_registry_t i18n_registry;
148 #define I18N_REGISTRY &i18n_registry
149 
150 char *
151 globus_common_i18n_get_string_by_key(
152  const char * locale,
153  const char * resource_name,
154  const char * key);
155 
156 char *
157 globus_common_i18n_get_string(
159  const char * key);
160 
161 /******************************************************************************
162  Install path discovery functions
163 ******************************************************************************/
164 
166 globus_location ( char ** bufp );
167 
169 globus_eval_path( const char * pathstring, char ** bufp);
170 
171 /* returns value of GLOBUS_LOCATION in the deploy dir config file */
173 globus_common_get_attribute_from_config_file( char * deploy_path,
174  char * file_location,
175  char * attribute,
176  char ** value );
177 
178 #ifdef __cplusplus
179 }
180 #endif
181 
182 #endif /* GLOBUS_INCLUDE_GLOBUS_COMMON_H */
Recursive Mutex.
Globus UUID Generator.
Byte Range List.
Globus Callback API.
Globus Threading Abstraction.
Linked List.
Globus Extension Modules.
Reference Counting Module Activation and Deactivation.
Debug Logging.
State Machine.
Memory Pool.
Globus Error Handling.
Mutex.
Definition: globus_thread.h:107
Lightweight Chaining Symboltable.
Thread Pooling.
globus_result_t globus_eval_path(const char *pathstring, char **bufp)
Definition: globus_common_paths.c:169
Command-Line Options Parser.
Condition variable.
Definition: globus_thread.h:124
Error Message Printing.
Priority Queue.
Globus Errno Error API.
Debugging Routines.
Home Directory ~ expansion.
uint32_t globus_result_t
Definition: globus_types.h:99
Hash Table.
Command-line Argument Parser.
Globus Error API.
Thread-safe libc macros, function prototypes.
Time Types and Macros.
URL Parsing.
Globus FIFO.
Handle Table for Reference Counting Data.
Include System Headers.
Common Thread Interface.
Module Descriptor.
Definition: globus_module.h:69