- Main Page
- Classes
- Files
- Directories

- File List
- File Members

# fbxglobalcamerasettings.h

Go to the documentation of this file.

    00001 /****************************************************************************************
    00002
    00003    Copyright (C) 2013 Autodesk, Inc.
    00004    All rights reserved.
    00005
    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
    00013 #ifndef _FBXSDK_FILEIO_GLOBAL_CAMERA_SETTINGS_H_
    00014 #define _FBXSDK_FILEIO_GLOBAL_CAMERA_SETTINGS_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #include <fbxsdk/core/base/fbxstring.h>
    00019
    00020 #include <fbxsdk/fbxsdk_nsbegin.h>
    00021
    00022 class FbxStatus;
    00023 class FbxManager;
    00024 class FbxScene;
    00025 class FbxCamera;
    00026 class FbxCameraSwitcher;
    00027
    00028 #define FBXSDK_CAMERA_PERSPECTIVE   "Producer Perspective"
    00029 #define FBXSDK_CAMERA_TOP           "Producer Top"
    00030 #define FBXSDK_CAMERA_FRONT         "Producer Front"
    00031 #define FBXSDK_CAMERA_BACK          "Producer Back"
    00032 #define FBXSDK_CAMERA_RIGHT         "Producer Right"
    00033 #define FBXSDK_CAMERA_LEFT          "Producer Left"
    00034 #define FBXSDK_CAMERA_BOTTOM        "Producer Bottom"
    00035 #define FBXSDK_CAMERA_SWITCHER      "Camera Switcher"
    00036
    00043 class FBXSDK_DLL FbxGlobalCameraSettings
    00044 {
    00045     FBXSDK_FRIEND_NEW();
    00046
    00047 public:
    00051         enum EViewingMode
    00052         {
    00053             eStandard,  //<! Standard view mode.
    00054             eXRay,      //<! X ray view mode.
    00055             eModelsOnly //<! Model only view mode.
    00056         };
    00057
    00064         bool SetDefaultCamera(const char* pCameraName, FbxStatus* pStatus=NULL);
    00065
    00068         const char* GetDefaultCamera() const;
    00069
    00071         void RestoreDefaultSettings();
    00072
    00075         void SetDefaultViewingMode(EViewingMode pViewingMode);
    00076
    00079         EViewingMode GetDefaultViewingMode() const;
    00081
    00087         void CreateProducerCameras();
    00088
    00090         void DestroyProducerCameras();
    00091
    00095         bool IsProducerCamera(FbxCamera* pCamera) const;
    00096
    00099         FbxCamera* GetCameraProducerPerspective() const;
    00100
    00103         FbxCamera* GetCameraProducerFront() const;
    00104
    00107         FbxCamera* GetCameraProducerBack() const;
    00108
    00111         FbxCamera* GetCameraProducerLeft() const;
    00112
    00115         FbxCamera* GetCameraProducerRight() const;
    00116
    00119         FbxCamera* GetCameraProducerTop() const;
    00120
    00123         FbxCamera* GetCameraProducerBottom() const;
    00124
    00131         FbxCameraSwitcher* GetCameraSwitcher() const;
    00132
    00135         void SetCameraSwitcher(FbxCameraSwitcher* pSwitcher);
    00137
    00140     const FbxGlobalCameraSettings& operator=(const FbxGlobalCameraSettings& pGlobalCameraSettings);
    00141
    00142 /*****************************************************************************************************************************
    00143 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
    00144 *****************************************************************************************************************************/
    00145 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00146     bool CopyProducerCamera(const char* pCameraName, const FbxCamera* pCamera) const;
    00147
    00148 private:
    00149     FbxGlobalCameraSettings(FbxManager& pManager, FbxScene& pScene);
    00150     ~FbxGlobalCameraSettings();
    00151
    00152     FbxScene*           mScene;
    00153     FbxString           mDefaultCamera;
    00154     EViewingMode        mDefaultViewingMode;
    00155     FbxCamera*          mCameraPerspective;
    00156     FbxCamera*          mCameraFront;
    00157     FbxCamera*          mCameraBack;
    00158     FbxCamera*          mCameraLeft;
    00159     FbxCamera*          mCameraRight;
    00160     FbxCamera*          mCameraTop;
    00161     FbxCamera*          mCameraBottom;
    00162     FbxCameraSwitcher*  mCameraSwitcher;
    00163 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
    00164 };
    00165
    00166 #include <fbxsdk/fbxsdk_nsend.h>
    00167
    00168 #endif /* _FBXSDK_FILEIO_GLOBAL_CAMERA_SETTINGS_H_ */