/usr/include/aqsis/ri/slo.h is in libaqsis-dev 1.6.0-8ubuntu1.
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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | /* 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 Compatibility interface to Pixar's sloarg shader argument library.
* \author Matthias Baas
*
* ===================================================================
* C-compatible header. C++ constructs must be preprocessor-protected.
* ===================================================================
*/
#ifndef SLO_H_INCLUDED
#define SLO_H_INCLUDED
#include <aqsis/ri/slx.h>
#ifdef __cplusplus
extern "C"
{
#endif
typedef enum {
SLO_TYPE_UNKNOWN,
SLO_TYPE_POINT,
SLO_TYPE_COLOR,
SLO_TYPE_SCALAR,
SLO_TYPE_STRING,
SLO_TYPE_SURFACE,
SLO_TYPE_LIGHT,
SLO_TYPE_DISPLACEMENT,
SLO_TYPE_VOLUME,
SLO_TYPE_TRANSFORMATION,
SLO_TYPE_IMAGER,
SLO_TYPE_VECTOR,
SLO_TYPE_NORMAL,
SLO_TYPE_MATRIX
} SLO_TYPE;
typedef enum {
SLO_STOR_UNKNOWN,
SLO_STOR_CONSTANT,
SLO_STOR_VARIABLE,
SLO_STOR_TEMPORARY,
SLO_STOR_PARAMETER,
SLO_STOR_GSTATE
} SLO_STORAGE;
typedef enum {
SLO_DETAIL_UNKNOWN,
SLO_DETAIL_VARYING,
SLO_DETAIL_UNIFORM
} SLO_DETAIL;
typedef struct
{
float xval;
float yval;
float zval;
}
SLO_POINT;
typedef struct
{
float val[4][4];
}
SLO_MATRIX;
typedef float SLO_SCALAR;
typedef struct SLOvissymdef
{
char *svd_name;
SLO_TYPE svd_type;
SLO_STORAGE svd_storage;
SLO_DETAIL svd_detail;
char * svd_spacename;
int svd_arraylen;
union {
SLO_POINT *pointval;
SLO_SCALAR *scalarval;
SLO_MATRIX *matrixval;
char *stringval;
} svd_default;
}
SLO_VISSYMDEF;
AQSIS_SLXARGS_SHARE extern void Slo_SetPath ( char * path );
AQSIS_SLXARGS_SHARE extern int Slo_SetShader ( char * name );
AQSIS_SLXARGS_SHARE extern char *Slo_GetName ( void );
AQSIS_SLXARGS_SHARE extern SLO_TYPE Slo_GetType ( void );
AQSIS_SLXARGS_SHARE extern int Slo_GetNArgs ( void );
AQSIS_SLXARGS_SHARE extern SLO_VISSYMDEF *Slo_GetArgById ( int id );
AQSIS_SLXARGS_SHARE extern SLO_VISSYMDEF *Slo_GetArgByName ( char * name );
AQSIS_SLXARGS_SHARE extern SLO_VISSYMDEF *Slo_GetArrayArgElement( SLO_VISSYMDEF * array, int index );
AQSIS_SLXARGS_SHARE extern void Slo_EndShader ( void );
AQSIS_SLXARGS_SHARE extern char *Slo_TypetoStr ( SLO_TYPE type );
AQSIS_SLXARGS_SHARE extern char *Slo_StortoStr ( SLO_STORAGE storage );
AQSIS_SLXARGS_SHARE extern char *Slo_DetailtoStr ( SLO_DETAIL detail );
#ifdef __cplusplus
}
#endif
#endif /* SLO_H_INCLUDED */
|