2
// Copyright � 1997 - 2001, Paul C. Gregory
4
// Contact: pgregory@aqsis.com
6
// This library is free software; you can redistribute it and/or
7
// modify it under the terms of the GNU General Public
8
// License as published by the Free Software Foundation; either
9
// version 2 of the License, or (at your option) any later version.
11
// This library is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
// General Public License for more details.
16
// You should have received a copy of the GNU General Public
17
// License along with this library; if not, write to the Free Software
18
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22
\brief Declares the storage structures for renderman symbols.
23
\author Paul C. Gregory (pgregory@aqsis.com)
26
//? Is .h included already?
27
#ifndef SYMBOLS_H_INCLUDED
28
#define SYMBOLS_H_INCLUDED 1
34
#include "ishaderdata.h"
35
#include "parameters.h"
37
START_NAMESPACE( Aqsis )
39
//----------------------------------------------------------------------
40
/** \struct SqParameterDeclaration
41
* A structure storing information about Renderman parameters.
44
struct SqParameterDeclaration
46
SqParameterDeclaration() :
48
m_Type( type_invalid ),
49
m_Class( class_invalid ),
54
SqParameterDeclaration( const char* strName, EqVariableType Type, EqVariableClass Class, TqInt Count,
55
CqParameter* ( *pCreate ) ( const char* strName, TqInt Count ), const char* strSpace ) :
61
m_strSpace( strSpace )
65
CqString m_strName; ///< Name of the parameter.
66
EqVariableType m_Type; ///< Type.
67
EqVariableClass m_Class; ///< Class.
68
TqInt m_Count; ///< Array length if an array.
69
CqParameter* ( *m_pCreate ) ( const char* strName, TqInt Count ); ///< Constructor function.
70
CqString m_strSpace; ///< Specification coordinate system name.
75
//-----------------------------------------------------------------------
77
END_NAMESPACE( Aqsis )
79
#endif // !SYMBOLS_H_INCLUDED