epoc32/include/GLES2/gl2platform.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@4
     1
#ifndef __gl2platform_h_
williamr@4
     2
#define __gl2platform_h_
williamr@4
     3
williamr@4
     4
/*
williamr@4
     5
 *  portions Copyright (c) 2008 - 2009 Nokia Corporation. All rights reserved.
williamr@4
     6
 * Differences from the actual sample implementation provided by Khronos:
williamr@4
     7
 * 1. This comment text.
williamr@4
     8
 * 2. Doxygen comment with tag 'publishedPartner', and tag 'released'
williamr@4
     9
 * 3. Modified GL_APICALL.  The symbian specific check has been moved to the
williamr@4
    10
 *    top because with a clean epoc/build/* starting point, makmake.pl wincsw
williamr@4
    11
 *    would pick up the Win32 defines section.  For vendor implementations,
williamr@4
    12
 *    use in your .MMP file
williamr@4
    13
 *    MACRO SYMBIAN_OGLES_DLL_EXPORTS.
williamr@4
    14
 *    The GCC32 case has been removed because this does not fit with the symbian
williamr@4
    15
 *    build system which uses GCCE instead.
williamr@4
    16
 * 4. A vendor implementation is allowed to overwrite/modify this file;
williamr@4
    17
 *    see Khronos API Implementers' Guidelines, Revision 0.91.0.
williamr@4
    18
 */
williamr@4
    19
williamr@4
    20
/**
williamr@4
    21
@publishedAll
williamr@4
    22
@released
williamr@4
    23
*/
williamr@4
    24
williamr@4
    25
/* $Id: gl2platform.h 4532 2007-11-26 11:12:44Z markc $ */
williamr@4
    26
williamr@4
    27
#ifdef __cplusplus
williamr@4
    28
extern "C" {
williamr@4
    29
#endif
williamr@4
    30
williamr@4
    31
/*
williamr@4
    32
** SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
williamr@4
    33
** Copyright (C) 2008 Silicon Graphics, Inc. All Rights Reserved.
williamr@4
    34
** 
williamr@4
    35
** Permission is hereby granted, free of charge, to any person obtaining 
williamr@4
    36
** a copy of this software and associated documentation files 
williamr@4
    37
** (the "Software"), to deal in the Software without restriction, 
williamr@4
    38
** including without limitation the rights to use, copy, modify, merge, 
williamr@4
    39
** publish, distribute, sublicense, and/or sell copies of the Software, 
williamr@4
    40
** and to permit persons to whom the Software is furnished to do so, 
williamr@4
    41
** subject to the following conditions:
williamr@4
    42
**  
williamr@4
    43
** The above copyright notice including the dates of first 
williamr@4
    44
** publication and either this permission notice or a reference to 
williamr@4
    45
** http://oss.sgi.com/projects/FreeB/ shall be included in all copies 
williamr@4
    46
** or substantial portions of the Software.
williamr@4
    47
** 
williamr@4
    48
** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
williamr@4
    49
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
williamr@4
    50
** MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
williamr@4
    51
** IN NO EVENT SHALL SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, 
williamr@4
    52
** DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 
williamr@4
    53
** OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR 
williamr@4
    54
** THE USE OR OTHER DEALINGS IN THE SOFTWARE.
williamr@4
    55
** 
williamr@4
    56
** Except as contained in this notice, the name of Silicon Graphics, Inc. 
williamr@4
    57
** shall not be used in advertising or otherwise to promote the sale, use 
williamr@4
    58
** or other dealings in this Software without prior written authorization 
williamr@4
    59
** from Silicon Graphics, Inc. 
williamr@4
    60
*/
williamr@4
    61
williamr@4
    62
/*
williamr@4
    63
 * If the pre-included toolchain header does not specify the __SOFTFP macro,
williamr@4
    64
 * this include defines it.
williamr@4
    65
 */
williamr@4
    66
#include <e32def.h>
williamr@4
    67
williamr@4
    68
/*-------------------------------------------------------------------------
williamr@4
    69
 * Definition of GL_APICALL and GL_APIENTRY
williamr@4
    70
 *-----------------------------------------------------------------------*/
williamr@4
    71
williamr@4
    72
#if defined (__SYMBIAN32__)
williamr@4
    73
#   if defined (SYMBIAN_OGLES_DLL_EXPORTS)
williamr@4
    74
#       define GL_APICALL __declspec(dllexport)
williamr@4
    75
#   else
williamr@4
    76
#       define GL_APICALL __declspec(dllimport)
williamr@4
    77
#   endif
williamr@4
    78
#elif defined(_WIN32) || defined(__VC32__)       /* Win32 */
williamr@4
    79
#   if defined (_DLL_EXPORTS)
williamr@4
    80
#       define GL_APICALL __declspec(dllexport)
williamr@4
    81
#   else
williamr@4
    82
#       define GL_APICALL __declspec(dllimport)
williamr@4
    83
#   endif
williamr@4
    84
#elif defined (__ARMCC_VERSION)                  /* ADS */
williamr@4
    85
#   define GL_APICALL
williamr@4
    86
#elif defined (__GNUC__)                         /* GCC dependencies (kludge) */
williamr@4
    87
#   define GL_APICALL
williamr@4
    88
#endif
williamr@4
    89
williamr@4
    90
#if !defined (GL_APICALL)
williamr@4
    91
#   error Unsupported platform!
williamr@4
    92
#endif
williamr@4
    93
williamr@4
    94
#define GL_APIENTRY
williamr@4
    95
williamr@4
    96
#ifdef __cplusplus
williamr@4
    97
}
williamr@4
    98
#endif
williamr@4
    99
williamr@4
   100
#endif /* __gl2platform_h_ */