| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
| <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> |
| <title>osclconfig_unix_common.h Source File</title> |
| <link href="doxygen.css" rel="stylesheet" type="text/css"> |
| </head><body> |
| <!-- Generated by Doxygen 1.2.18 --> |
| <center> |
| <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="globals.html">Globals</a> </center> |
| <hr><h1>osclconfig_unix_common.h</h1><a href="osclconfig__unix__common_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">// -*- c++ -*-</span> |
| 00002 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span> |
| 00003 |
| 00004 <span class="comment">// O S C L C O N F I G _ U N I X _ C O M M O N</span> |
| 00005 |
| 00006 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span> |
| 00007 |
| 00008 |
| 00017 <span class="preprocessor">#ifndef OSCLCONFIG_UNIX_COMMON_H_INCLUDED</span> |
| 00018 <span class="preprocessor"></span><span class="preprocessor">#define OSCLCONFIG_UNIX_COMMON_H_INCLUDED</span> |
| 00019 <span class="preprocessor"></span> |
| 00020 |
| 00021 <span class="comment">// system header files</span> |
| 00022 <span class="preprocessor">#include <stdlib.h></span> <span class="comment">// abort</span> |
| 00023 <span class="preprocessor">#include <stdarg.h></span> <span class="comment">// va_list</span> |
| 00024 <span class="preprocessor">#include <sys/types.h></span> |
| 00025 <span class="preprocessor">#include <stdio.h></span> |
| 00026 <span class="preprocessor">#include <wchar.h></span> |
| 00027 <span class="preprocessor">#include <string.h></span> |
| 00028 <span class="preprocessor">#include <unistd.h></span> <span class="comment">//for sleep</span> |
| 00029 <span class="preprocessor">#include <pthread.h></span> |
| 00030 <span class="preprocessor">#include <ctype.h></span> <span class="comment">// for tolower and toupper</span> |
| 00031 <span class="preprocessor">#ifdef __cplusplus</span> |
| 00032 <span class="preprocessor"></span><span class="preprocessor">#include <new></span> <span class="comment">//for placement new</span> |
| 00033 <span class="preprocessor">#endif</span> |
| 00034 <span class="preprocessor"></span><span class="preprocessor">#include <math.h></span> |
| 00035 |
| <a name="l00036"></a><a class="code" href="osclconfig__unix__common_8h.html#a0">00036</a> <span class="preprocessor">#define OSCL_DISABLE_INLINES 0</span> |
| 00037 <span class="preprocessor"></span> |
| <a name="l00038"></a><a class="code" href="osclconfig__unix__common_8h.html#a1">00038</a> <span class="preprocessor">#define OSCL_HAS_ANSI_STDLIB_SUPPORT 1</span> |
| <a name="l00039"></a><a class="code" href="osclconfig__unix__common_8h.html#a2">00039</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_ANSI_MATH_SUPPORT 1</span> |
| <a name="l00040"></a><a class="code" href="osclconfig__unix__common_8h.html#a3">00040</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_GLOBAL_VARIABLE_SUPPORT 1</span> |
| <a name="l00041"></a><a class="code" href="osclconfig__unix__common_8h.html#a4">00041</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_ANSI_STRING_SUPPORT 1</span> |
| <a name="l00042"></a><a class="code" href="osclconfig__unix__common_8h.html#a5">00042</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_ANSI_WIDE_STRING_SUPPORT 1</span> |
| <a name="l00043"></a><a class="code" href="osclconfig__unix__common_8h.html#a6">00043</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_ANSI_STDIO_SUPPORT 1</span> |
| 00044 <span class="preprocessor"></span> |
| <a name="l00045"></a><a class="code" href="osclconfig__unix__common_8h.html#a7">00045</a> <span class="preprocessor">#define OSCL_MEMFRAG_PTR_BEFORE_LEN 1</span> |
| 00046 <span class="preprocessor"></span> |
| <a name="l00047"></a><a class="code" href="osclconfig__unix__common_8h.html#a8">00047</a> <span class="preprocessor">#define OSCL_HAS_UNIX_SUPPORT 1</span> |
| <a name="l00048"></a><a class="code" href="osclconfig__unix__common_8h.html#a9">00048</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_MSWIN_SUPPORT 0</span> |
| <a name="l00049"></a><a class="code" href="osclconfig__unix__common_8h.html#a10">00049</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_SYMBIAN_SUPPORT 0</span> |
| 00050 <span class="preprocessor"></span> |
| 00051 <span class="comment">// 64-bit int</span> |
| <a name="l00052"></a><a class="code" href="osclconfig__unix__common_8h.html#a11">00052</a> <span class="preprocessor">#define OSCL_HAS_NATIVE_INT64_TYPE 1</span> |
| <a name="l00053"></a><a class="code" href="osclconfig__unix__common_8h.html#a12">00053</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_HAS_NATIVE_UINT64_TYPE 1</span> |
| <a name="l00054"></a><a class="code" href="osclconfig__unix__common_8h.html#a13">00054</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_NATIVE_INT64_TYPE int64_t</span> |
| <a name="l00055"></a><a class="code" href="osclconfig__unix__common_8h.html#a14">00055</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_NATIVE_UINT64_TYPE uint64_t</span> |
| <a name="l00056"></a><a class="code" href="osclconfig__unix__common_8h.html#a15">00056</a> <span class="preprocessor"></span><span class="preprocessor">#define INT64(x) x##LL</span> |
| <a name="l00057"></a><a class="code" href="osclconfig__unix__common_8h.html#a16">00057</a> <span class="preprocessor"></span><span class="preprocessor">#define UINT64(x) x##ULL</span> |
| <a name="l00058"></a><a class="code" href="osclconfig__unix__common_8h.html#a17">00058</a> <span class="preprocessor"></span><span class="preprocessor">#define INT64_HILO(high,low) ((((high##LL))<<32)|low)</span> |
| <a name="l00059"></a><a class="code" href="osclconfig__unix__common_8h.html#a18">00059</a> <span class="preprocessor"></span><span class="preprocessor">#define UINT64_HILO(high,low) ((((high##ULL))<<32)|low)</span> |
| 00060 <span class="preprocessor"></span> |
| 00061 <span class="comment">// character set.</span> |
| <a name="l00062"></a><a class="code" href="osclconfig__unix__common_8h.html#a19">00062</a> <span class="preprocessor">#define OSCL_HAS_UNICODE_SUPPORT 1</span> |
| <a name="l00063"></a><a class="code" href="osclconfig__unix__common_8h.html#a20">00063</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_NATIVE_WCHAR_TYPE wchar_t</span> |
| 00064 <span class="preprocessor"></span><span class="preprocessor">#if (OSCL_HAS_UNICODE_SUPPORT)</span> |
| <a name="l00065"></a><a class="code" href="osclconfig__unix__common_8h.html#a21">00065</a> <span class="preprocessor"></span><span class="preprocessor">#define _STRLIT(x) L ## x</span> |
| 00066 <span class="preprocessor"></span><span class="preprocessor">#else</span> |
| 00067 <span class="preprocessor"></span><span class="preprocessor">#define _STRLIT(x) x</span> |
| 00068 <span class="preprocessor"></span><span class="preprocessor">#endif</span> |
| <a name="l00069"></a><a class="code" href="osclconfig__unix__common_8h.html#a22">00069</a> <span class="preprocessor"></span><span class="preprocessor">#define _STRLIT_CHAR(x) x</span> |
| <a name="l00070"></a><a class="code" href="osclconfig__unix__common_8h.html#a23">00070</a> <span class="preprocessor"></span><span class="preprocessor">#define _STRLIT_WCHAR(x) L ## x</span> |
| 00071 <span class="preprocessor"></span> |
| 00072 <span class="comment">// Thread-local storage. Unix has keyed TLS.</span> |
| <a name="l00073"></a><a class="code" href="osclconfig__unix__common_8h.html#a24">00073</a> <span class="preprocessor">#define OSCL_HAS_TLS_SUPPORT 1</span> |
| <a name="l00074"></a><a class="code" href="osclconfig__unix__common_8h.html#a25">00074</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_TLS_IS_KEYED 1</span> |
| <a name="l00075"></a><a class="code" href="osclconfig__unix__common_8h.html#a31">00075</a> <span class="preprocessor"></span><span class="keyword">typedef</span> pthread_key_t <a class="code" href="osclconfig__unix__common_8h.html#a31">TOsclTlsKey</a> ; |
| <a name="l00076"></a><a class="code" href="osclconfig__unix__common_8h.html#a26">00076</a> <span class="preprocessor">#define OSCL_TLS_KEY_CREATE_FUNC(key) (pthread_key_create(&key,NULL)==0)</span> |
| <a name="l00077"></a><a class="code" href="osclconfig__unix__common_8h.html#a27">00077</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_TLS_KEY_DELETE_FUNC(key) pthread_key_delete(key)</span> |
| <a name="l00078"></a><a class="code" href="osclconfig__unix__common_8h.html#a28">00078</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_TLS_STORE_FUNC(key,ptr) (pthread_setspecific(key,(const void*)ptr)==0)</span> |
| <a name="l00079"></a><a class="code" href="osclconfig__unix__common_8h.html#a29">00079</a> <span class="preprocessor"></span><span class="preprocessor">#define OSCL_TLS_GET_FUNC(key) pthread_getspecific(key)</span> |
| 00080 <span class="preprocessor"></span> |
| 00081 <span class="comment">//Basic lock</span> |
| <a name="l00082"></a><a class="code" href="osclconfig__unix__common_8h.html#a30">00082</a> <span class="preprocessor">#define OSCL_HAS_BASIC_LOCK 1</span> |
| 00083 <span class="preprocessor"></span><span class="preprocessor">#include <pthread.h></span> |
| <a name="l00084"></a><a class="code" href="osclconfig__unix__common_8h.html#a32">00084</a> <span class="keyword">typedef</span> pthread_mutex_t <a class="code" href="osclconfig__unix__common_8h.html#a32">TOsclBasicLockObject</a>; |
| 00085 |
| 00086 <span class="preprocessor">#endif // OSCLCONFIG_UNIX_COMMON_H_INCLUDED</span> |
| 00087 <span class="preprocessor"></span> |
| </pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> |
| <address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> |
| </small></address> |
| </body> |
| </html> |