source: NonGTP/FCollada/FCDocument/FCDEffectParameterFactory.h @ 964

Revision 964, 1.6 KB checked in by igarcia, 18 years ago (diff)
Line 
1/*
2        Copyright (C) 2005-2006 Feeling Software Inc.
3        MIT License: http://www.opensource.org/licenses/mit-license.php
4*/
5
6/**
7        @file FCDEffectParameterFactory.h
8        This file contains the FCDEffectParameterFactory class.
9*/
10
11#ifndef _FCD_EFFECT_PARAMETER_FACTORY_H_
12#define _FCD_EFFECT_PARAMETER_FACTORY_H_
13
14class FCDocument;
15
16/**
17        [INTERNAL] The factory for COLLADA effect parameters.
18
19        Takes in a COLLADA XML tree and returns a new
20        parameter that represent it, if one is possible.
21
22        @ingroup FCDEffect
23*/
24class FCOLLADA_EXPORT FCDEffectParameterFactory
25{
26private:
27        // Never instantiate: this is a static class
28        FCDEffectParameterFactory() {}
29
30public:
31        /** [INTERNAL] Creates a new effect parameter, given a type.
32                To create new effect parameters, use the FCDEffectParameterList::AddParameter function.
33                @param document The COLLADA document that will own the effect parameter.
34                @param type The type of effect to create.
35                        This value should reflect the FCDEffectParameter::Type enum. */
36        static FCDEffectParameter* Create(FCDocument* document, uint32 type);
37
38        /** [INTERNAL] Generates the effect parameter object for the given XML node tree.
39                @param document The COLLADA document that will own the effect parameter.
40                @param parameterNode The COLLADA XML tree node.
41                @param status An optional return status.
42                @return The new effect parameter. This pointer will be NULL if no parameter can be generated
43                        from the given COLLADA XML tree node. */
44        static FCDEffectParameter* LoadFromXML(FCDocument* document, xmlNode* parameterNode, FUStatus* status);
45};
46
47#endif // _FCD_EFFECT_PARAMETER_FACTORY_H_
Note: See TracBrowser for help on using the repository browser.