fbxsdk/scene/fbxvideo.h Source File

fbxvideo.h
Go to the documentation of this file.
1 /****************************************************************************************
2 
3  Copyright (C) 2015 Autodesk, Inc.
4  All rights reserved.
5 
6  Use of this software is subject to the terms of the Autodesk license agreement
7  provided at the time of installation or download, or which otherwise accompanies
8  this software in either electronic or hard copy form.
9 
10 ****************************************************************************************/
11 
13 #ifndef _FBXSDK_SCENE_VIDEO_H_
14 #define _FBXSDK_SCENE_VIDEO_H_
15 
16 #include <fbxsdk/fbxsdk_def.h>
17 
18 #include <fbxsdk/core/fbxobject.h>
19 
20 #include <fbxsdk/fbxsdk_nsbegin.h>
21 
26 {
28 
29 public:
34  void Reset();
37 
45  void ImageTextureSetMipMap(bool pUseMipMap);
46 
50  bool ImageTextureGetMipMap() const;
51 
57  bool SetFileName(const char* pName);
58 
62  FbxString GetFileName () const;
63 
69  bool SetRelativeFileName(const char* pName);
70 
74  const char* GetRelativeFileName() const;
75 
90  void SetImageSequence(bool pImageSequence);
91 
95  bool GetImageSequence() const;
96 
100  void SetImageSequenceOffset(int pOffset);
101 
105  int GetImageSequenceOffset() const;
107 
111  double GetFrameRate() const;
112 
116  int GetLastFrame() const;
117 
121  int GetWidth() const;
122 
126  int GetHeight() const;
127 
133  void SetStartFrame(int pStartFrame);
134 
138  int GetStartFrame() const;
139 
145  void SetStopFrame(int pStopFrame);
146 
150  int GetStopFrame() const;
151 
157  void SetPlaySpeed(double pPlaySpeed);
158 
162  double GetPlaySpeed() const;
163 
168  void SetOffset(FbxTime pTime);
169 
170  /* Retrieve the time offset.
171  * \return The current time shift.
172  */
173  FbxTime GetOffset() const;
174 
180  void SetFreeRunning(bool pState);
181 
185  bool GetFreeRunning() const;
186 
187 
193  void SetLoop(bool pLoop);
194 
198  bool GetLoop() const;
199 
200 
204  {
212  eFullOddEven
213  };
214 
218  void SetInterlaceMode(EInterlaceMode pInterlaceMode);
219 
223  EInterlaceMode GetInterlaceMode() const;
224 
225 
229  {
232  eDiskAsync
233  };
234 
238  void SetAccessMode(EAccessMode pAccessMode);
239 
243  EAccessMode GetAccessMode() const;
245 
246 /*****************************************************************************************************************************
247 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
248 *****************************************************************************************************************************/
249 #ifndef DOXYGEN_SHOULD_SKIP_THIS
250 protected:
251  virtual void Construct(const FbxObject* pFrom);
252  virtual void ConstructProperties(bool pForceSet);
253  virtual bool ConnectNotify(FbxConnectEvent const &pEvent);
254 
255 public:
256  virtual FbxObject& Copy(const FbxObject& pObject);
257 
258  virtual FbxStringList GetTypeFlags() const;
259 
260  void SetOriginalFormat(bool pState);
261  bool GetOriginalFormat() const;
262  void SetOriginalFilename(const char* pOriginalFilename);
263  const char* GetOriginalFilename() const;
264 
265  FbxPropertyT<FbxBool> ImageSequence;
266  FbxPropertyT<FbxInt> ImageSequenceOffset;
267  FbxPropertyT<FbxDouble> FrameRate;
268  FbxPropertyT<FbxInt> LastFrame;
269  FbxPropertyT<FbxInt> Width;
270  FbxPropertyT<FbxInt> Height;
272  FbxPropertyT<FbxInt> StartFrame;
273  FbxPropertyT<FbxInt> StopFrame;
274  FbxPropertyT<FbxDouble> PlaySpeed;
275  FbxPropertyT<FbxTime> Offset;
276  FbxPropertyT<EInterlaceMode> InterlaceMode;
277  FbxPropertyT<FbxBool> FreeRunning;
279  FbxPropertyT<EAccessMode> AccessMode;
280 
281 protected:
282  void Init();
283 
284  bool mUseMipMap;
285  bool mOriginalFormat;
286  FbxString mOriginalFilename;
287  FbxString mRelativeFilename;
288 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
289 };
290 
293 
294 #include <fbxsdk/fbxsdk_nsend.h>
295 
296 #endif /* _FBXSDK_SCENE_VIDEO_H_ */
#define FBXSDK_OBJECT_DECLARE(Class, Parent)
Macro used to declare a new class derived from FbxObject.
Definition: fbxobject.h:61
FBX SDK environment definition.
EInterlaceMode
Video interlace modes.
Definition: fbxvideo.h:203
Half of a frame, odd fields only.
Definition: fbxvideo.h:208
FBX SDK video class.
Definition: fbxvideo.h:25
Extract and use the odd field of a full frame.
Definition: fbxvideo.h:210
virtual FbxObject & Copy(const FbxObject &pObject)
Copy an object content into this object.
Array that stores pairs of FbxString and a pointer.
Utility class to manipulate strings.
Definition: fbxstring.h:66
Half of a frame, even fields only.
Definition: fbxvideo.h:207
EFbxType
Type identifier constants.
Class to encapsulate time units.
Definition: fbxtime.h:44
Progressive frame (full frame).
Definition: fbxvideo.h:205
The base class of most FBX objects.
Definition: fbxobject.h:157
virtual void Construct(const FbxObject *pFrom)
Optional constructor override, automatically called by default constructor.
Alternate even/odd fields.
Definition: fbxvideo.h:206
Enumeration.
EAccessMode
Video clip access mode.
Definition: fbxvideo.h:228
EFbxType FbxTypeOf(const FbxVideo::EInterlaceMode &)
Definition: fbxvideo.h:291
#define FBXSDK_DLL
Definition: fbxarch.h:173
Extract and use the even field of a full frame.
Definition: fbxvideo.h:209
Extract eFields and make full frame with each one beginning with Odd (60fps).
Definition: fbxvideo.h:211
virtual void ConstructProperties(bool pForceSet)
Optional property constructor override, automatically called by default constructor.