# XSICameraFocalLength.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 _XSICAMERAFOCALLENGTH_H
    00013 #define _XSICAMERAFOCALLENGTH_H
    00014
    00015 #include "Template.h"
    00016
    00020 class XSIEXPORT CSLXSICameraFocalLength
    00021     : public CSLTemplate
    00022 {
    00023 public:
    00024
    00031     CSLXSICameraFocalLength(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
    00032
    00035     virtual ~CSLXSICameraFocalLength();
    00036
    00040     SI_Float GetFocalLength();
    00041
    00046     SI_Void SetFocalLength(SI_Float in_lValue);
    00047
    00048
    00052     virtual ETemplateType           Type() { return XSI_CAMERA_FOCALLENGTH; }
    00053
    00058     virtual SI_Error Synchronize();
    00059
    00064     virtual CSLAnimatableType* ParameterFromName(SI_Char *in_szName);
    00065
    00070     virtual CSLAnimatableType* ParameterFromType(EFCurveType in_Type, SI_Char *in_szName);
    00071
    00076     virtual const SI_Char* GetParameterName(CSLAnimatableType* in_pParameter);
    00077
    00078     CSLFloatProxy*  GetFocalLengthProxy() { return &m_FocalLength; };
    00079
    00080 private:
    00081
    00082     CSLFloatProxy   m_FocalLength;
    00083
    00084     void *m_pReserved;  // reserved for future extension
    00085 };
    00086
    00087 #endif