# COLLADAFCurve.h

    00001 //***************************************************************************************
    00002 //
    00003 // File supervisor: Crosswalk team
    00004 //
    00005 // Copyright 2008 Autodesk, Inc.  All rights reserved.
    00006 // Use of this software is subject to the terms of the Autodesk license agreement
    00007 // provided at the time of installation or download, or which otherwise accompanies
    00008 // this software in either electronic or hard copy form.
    00009 //
    00010 //***************************************************************************************
    00011
    00012 #ifndef _COLLADAFCURVE_H
    00013 #define _COLLADAFCURVE_H
    00014
    00015 #include "FCurve.h"
    00016 #include "SL_Enum.h"
    00017
    00018 #define ELEM_TIME       0
    00019 #define ELEM_VALUE      1
    00020 #define ELEM_IN_TAN     2
    00021 #define ELEM_OUT_TAN    3
    00022 #define ELEM_INTERP     4
    00023
    00024
    00026 class XSIEXPORT CSLCOLLADAFCurve
    00027     : public CSLFCurve
    00028 {
    00029 public:
    00039     CSLCOLLADAFCurve
    00040     (
    00041         CSLScene* in_pScene,
    00042         CSLModel *in_pModel,
    00043         CdotXSITemplate* in_pTemplate,
    00044         EFCurveType in_Type,
    00045         EFCurveInterpolationType in_InterpolationType
    00046     );
    00047
    00050     virtual ~CSLCOLLADAFCurve();
    00051
    00056     virtual SI_Error Synchronize();
    00057
    00062     virtual SI_Error ConnectCOLLADAAnimation( CCOLLADATemplate* in_pChannel, const int in_offset = 0);
    00063
    00064 private:
    00065
    00066     SI_Void     GetFloatArrayFromCurve ( CSIBCArray<float>& inout_Array, int in_iElement );
    00067     SI_Void     AddSource ( CCOLLADATemplate* in_pAnimation,
    00068                             int in_iElement,
    00069                             SI_Char* in_szPrefix,
    00070                             SI_Char* in_szID,
    00071                             SI_Char* in_szOutput,
    00072                             CCOLLADATemplate* in_pSampler);
    00073
    00074 };
    00075
    00076 #endif