/usr/include/aqsis/ri/ritypes.h is in libaqsis-dev 1.8.2-5+b1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | /* Aqsis
/ Copyright (C) 1997 - 2001, Paul C. Gregory
/
/ Contact: pgregory@aqsis.org
/
/ This library is free software; you can redistribute it and/or
/ modify it under the terms of the GNU General Public
/ License as published by the Free Software Foundation; either
/ version 2 of the License, or (at your option) any later version.
/
/ This library is distributed in the hope that it will be useful,
/ but WITHOUT ANY WARRANTY; without even the implied warranty of
/ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
/ General Public License for more details.
/
/ You should have received a copy of the GNU General Public
/ License along with this library; if not, write to the Free Software
/ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/** \file
* \brief Definitions of types used by the RenderMan Interface
*
* ===================================================================
* C-compatible header. C++ constructs must be preprocessor-protected.
* ===================================================================
*/
#ifndef RI_TYPES_H_INCLUDED
#define RI_TYPES_H_INCLUDED
#ifdef __cplusplus
extern "C"
{
#endif
typedef short RtBoolean;
typedef int RtInt;
typedef float RtFloat;
typedef char* RtToken;
typedef RtFloat RtColor[ 3 ];
typedef RtFloat RtPoint[ 3 ];
typedef RtFloat RtVector[ 3 ];
typedef RtFloat RtNormal[ 3 ];
typedef RtFloat RtHpoint[ 4 ];
typedef RtFloat RtMatrix[ 4 ][ 4 ];
typedef RtFloat RtBasis[ 4 ][ 4 ];
typedef RtFloat RtBound[ 6 ];
typedef char* RtString;
typedef void* RtPointer;
typedef void RtVoid;
typedef RtFloat ( *RtFilterFunc ) ( RtFloat, RtFloat, RtFloat, RtFloat );
typedef RtFloat ( *RtFloatFunc ) ();
typedef RtVoid ( *RtFunc ) ();
typedef RtVoid ( *RtErrorFunc ) ( RtInt code, RtInt severity, RtString message );
typedef RtErrorFunc RtErrorHandler;
typedef RtVoid ( *RtProcSubdivFunc ) ( RtPointer, RtFloat );
typedef RtVoid ( *RtProcFreeFunc ) ( RtPointer );
typedef RtVoid ( *RtArchiveCallback ) ( RtToken, char *, ... );
typedef RtPointer RtObjectHandle;
typedef RtPointer RtLightHandle;
typedef RtPointer RtContextHandle;
typedef RtPointer RtArchiveHandle;
/* Aqsis-specific typedefs */
typedef RtVoid ( *RtProgressFunc ) ( RtFloat PercentComplete, RtInt FrameNo );
#ifdef __cplusplus
/** tokenCast
* /brief The RISpec prevents us from doing The Right Thing (tm) and using:
*
* typedef const char* RtToken;
*
* The RISpec clearly specifies:
*
* typedef char* RtToken;
*
* Whereas using const char* would have made much more sense. At the same time, there's
* probably lots of code which relies on RtToken being non-const, so we can't just modify
* the typedef.
*
* Please use this convience function to avoid the conversion warning when using a RtToken
* warning: deprecated conversion from string constant to 'char*'
**/
inline char* tokenCast(const char* token)
{
return const_cast< char* >(token);
}
}
#endif
#endif
|