- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# FCDEffectTechnique Class Reference
[COLLADA Effect Classes [ColladaFX]]

A COLLADA effect technique. More...

`#include <FCDEffectTechnique.h>`

Inheritance diagram for FCDEffectTechnique:

List of all members.

## Public Member Functions
| FCDEffectTechnique (FCDocument *document, FCDEffectProfileFX *parent)
| Constructor: do not use directly.
virtual | ~FCDEffectTechnique ()
| Destructor.
FCDEffectProfileFX * | GetParent ()
| Retrieves the effect profile that contains this technique.
const FCDEffectProfileFX * | GetParent () const
| See above.
| DEPRECATED (3.05A, GetParent()->GetParent()->GetDaeId) const fm
| Retrieves the COLLADA id of the parent effect.
const fstring & | GetName () const
| Retrieves the sub-id of the technique.
void | SetName (const fstring &_name)
| Sets the sub-id of the technique.
| DEPRECATED (3.05A, GetPassCount and GetPass(index)) void GetPassList()
| Retrieves the list of passes.
size_t | GetPassCount () const
| Retrieves the number of passes contained within this effect technique.
FCDEffectPass * | GetPass (size_t index)
| Retrieves a specific pass contained within this effect technique.
const FCDEffectPass * | GetPass (size_t index) const
| See above.
FCDEffectPass * | AddPass ()
| Adds a new pass to this effect technique.
| DEPRECATED (3.05A, GetCodeCount and GetCode(index) or FindCode) void GetCodeList()
| Retrieves the list of code inclusions.
size_t | GetCodeCount () const
| Retrieves the number of code inclusions contained within the effect profile.
FCDEffectCode * | GetCode (size_t index)
| Retrieves a code inclusion contained within the effect profile.
const FCDEffectCode * | GetCode (size_t index) const
| See above.
FCDEffectCode * | FindCode (const char *sid)
| Retrieves the code inclusion with the given sub-id.
const FCDEffectCode * | FindCode (const char *sid) const
| See above.
FCDEffectCode * | AddCode ()
| Adds a new code inclusion to this effect profile.
size_t | GetEffectParameterCount () const
| Retrieves the number of local effect parameters.
FCDEffectParameter * | GetEffectParameter (size_t index)
| Retrieves a given local effect parameter.
const FCDEffectParameter * | GetEffectParameter (size_t index) const
FCDEffectParameter * | AddEffectParameter (uint32 type)
| Adds a local effect parameter to the local list.
FCDEffectTechnique * | Clone (FCDEffectTechnique *clone=NULL) const
| [INTERNAL] Clones the full effect technique.
| DEPRECATED (3.05A, not recommended) void Flatten()
| [INTERNAL] Flattens this effect technique.

## Detailed Description

A COLLADA effect technique.

The COLLADA effect technique contains the passes to be used in the rendering of polygon sets.

It also contains a list of effect parameters: both generators and overrides and it is the lowest level of abstraction in which you can access effect parameters. For flattened materials, this means that all the effect parameters will be accessible at this level.

It also contains a list of effect code inclusions.

## Constructor & Destructor Documentation

FCDEffectTechnique::FCDEffectTechnique | ( | FCDocument * | document,
|  | FCDEffectProfileFX * | parent
| ) |

  | Constructor: do not use directly. Instead, use the FCDEffectProfileFX::AddTechnique function. Parameters:
  | document | The FCollada document that owns this technique.
  | parent | The effect profile which contains the technique.

## Member Function Documentation

FCDEffectCode* FCDEffectTechnique::AddCode | ( |  | ) |

| Adds a new code inclusion to this effect profile. Returns: The new code inclusion.

FCDEffectParameter* FCDEffectTechnique::AddEffectParameter | ( | uint32 | type | ) |

  | Adds a local effect parameter to the local list. See also: FCDEffectParameter::Type Parameters:
  | type | The value type of the effect parameter to create.
Returns: The new local effect parameter.

FCDEffectPass* FCDEffectTechnique::AddPass | ( |  | ) |

| Adds a new pass to this effect technique. Returns: The new pass.

FCDEffectTechnique* FCDEffectTechnique::Clone | ( | FCDEffectTechnique * | clone = `NULL` | ) | const

  | [INTERNAL] Clones the full effect technique. Parameters:
  | clone | The cloned technique. If this pointer is NULL, a new technique is created and you will need to release this new techniquetechnique.
Returns: The cloned technique. This pointer will never be NULL.

FCDEffectTechnique::DEPRECATED | ( | 3. | 05A,
|  | not | recommended
| ) | `[inline]`

| [INTERNAL] Flattens this effect technique. Merges the parameter overrides into the parameter generators.

FCDEffectTechnique::DEPRECATED | ( | 3. | 05A,
|  | GetCodeCount and GetCode(index) or | FindCode
| ) | `[inline]`

| Retrieves the list of code inclusions. Returns: The list of code inclusions.

FCDEffectTechnique::DEPRECATED | ( | 3. | 05A,
|  | GetPassCount and | GetPass(index)
| ) | `[inline]`

| Retrieves the list of passes. Returns: The list of passes.

FCDEffectTechnique::DEPRECATED | ( | 3. | 05A,
|  | GetParent()->GetParent()-> | GetDaeId
| ) | const`[inline]`

| Retrieves the COLLADA id of the parent effect. This function is mostly useful as a shortcut for debugging and reporting. Returns: The COLLADA id of the parent effect.

FCDEffectCode* FCDEffectTechnique::FindCode | ( | const char * | sid | ) | `[inline]`

  | Retrieves the code inclusion with the given sub-id. Parameters:
  | sid | A COLLADA sub-id.
Returns: The code inclusion with the given sub-id. This pointer will be NULL, if there are no code inclusions that match the given sub-id.

FCDEffectCode* FCDEffectTechnique::GetCode | ( | size_t | index | ) | `[inline]`

  | Retrieves a code inclusion contained within the effect profile. Parameters:
  | index | The index of the code inclusion.
Returns: The code inclusion. This pointer will be NULL if the index is out-of-bounds.

size_t FCDEffectTechnique::GetCodeCount | ( |  | ) | const`[inline]`

| Retrieves the number of code inclusions contained within the effect profile. Returns: The number of code inclusions.

FCDEffectParameter* FCDEffectTechnique::GetEffectParameter | ( | size_t | index | ) | `[inline]`

  | Retrieves a given local effect parameter. Parameters:
  | index | An index.
Returns: The local effect parameter at the given index.

size_t FCDEffectTechnique::GetEffectParameterCount | ( |  | ) | const`[inline]`

| Retrieves the number of local effect parameters. Returns: The number of local effect parameters.

const fstring& FCDEffectTechnique::GetName | ( |  | ) | const`[inline]`

| Retrieves the sub-id of the technique. Returns: The sub-id of the technique.

FCDEffectProfileFX* FCDEffectTechnique::GetParent | ( |  | ) | `[inline]`

| Retrieves the effect profile that contains this technique. Returns: The parent effect profile.

FCDEffectPass* FCDEffectTechnique::GetPass | ( | size_t | index | ) | `[inline]`

  | Retrieves a specific pass contained within this effect technique. Parameters:
  | index | The index of the pass.
Returns: The pass. This pointer will be NULL if the index is out-of-bounds.

size_t FCDEffectTechnique::GetPassCount | ( |  | ) | const`[inline]`

| Retrieves the number of passes contained within this effect technique. Returns: The number of passes.

void FCDEffectTechnique::SetName | ( | const fstring & | _name | ) | `[inline]`

  | Sets the sub-id of the technique. The effect technique must have a valid sub-id that is unique within its scope. Otherwise, one will be provided on XML export. Parameters:
  | _name | A valid sub-id.

The documentation for this class was generated from the following file:

- FCDocument/FCDEffectTechnique.h