- Main Page
- Classes
- Files
- Directories

- File List
- File Members

# fbxthread.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_CORE_SYNC_THREAD_H_
    00014 #define _FBXSDK_CORE_SYNC_THREAD_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #ifndef FBXSDK_ENV_WINRT
    00019
    00020 #include <fbxsdk/fbxsdk_nsbegin.h>
    00021
    00022 class FbxThreadImpl;
    00023
    00025 typedef void (*FbxThreadProc)(void*);
    00026
    00029 class FBXSDK_DLL FbxThread
    00030 {
    00031 public:
    00032     enum EState {eUnknown, eRunning, eDead};
    00033     enum EPriority {eNone, eIdle, eLowest, eLow, eNormal, eHigh, eHighest, eRealTime};
    00034
    00040     FbxThread(FbxThreadProc pProc, void* pArg, bool pSuspend=false);
    00041
    00048     FbxThread(FbxThreadProc pProc, void* pArg, EPriority pPriority, bool pSuspend=false);
    00049
    00051     virtual ~FbxThread();
    00052
    00058     bool Suspend();
    00059
    00063     bool Resume();
    00064
    00068     bool Join();
    00069
    00073     bool Kill();
    00074
    00078     EPriority GetPriority();
    00079
    00084     bool SetPriority(EPriority pPriority);
    00085
    00089     EState GetState();
    00090
    00091 private:
    00092     FbxThreadImpl* mImpl;
    00093 };
    00094
    00095 #include <fbxsdk/fbxsdk_nsend.h>
    00096
    00097 #endif /* !FBXSDK_ENV_WINRT */
    00098
    00099 #endif /* _FBXSDK_CORE_SYNC_THREAD_H_ */