fbsdk/fbprofiler.h File Reference

fbprofiler.h File Reference
#include <kaydaradef.h>
#include <fbsdk/fbcomponent.h>
#include <fbsdk/fbcore.h>

Classes

class  FBProfileTaskCycle
 FBProfileTaskCycle. More...
 
class  FBProfileTimeEvent
 FBProfileTimeEvent. More...
 
class  FBProfiler
 FBProfiler. More...
 
class  FBProfilerHelper
 FBProfilerHelper. More...
 

Namespaces

 ORSDK2018
 

Macros

#define FBSDK_DLL   K_DLLIMPORT
 Be sure that FBSDK_DLL is defined only once... More...
 
#define FBProfiler_CreateTaskCycle(pClass, pR, pG, pB)
 Profiling global variable declaration for task cycle profiling in the SDK. More...
 
#define FBProfiling_SetupTaskCycle(pClass)
 Profiling global variable setup. More...
 
#define FBProfiling_TaskCycleIndex(pClass)   gProfilingIndex_##pClass
 Registered profiling task cycle index. More...
 

Typedefs

typedef class FBPropertyBaseEnum< enum FBProfilingMode > FBPropertyProfilingMode
 

Enumerations

enum  FBProfilingMode {
  kFBProfilingModeDisabled = 0, kFBProfilingModeEvaluation, kFBProfilingModeRendering, kFBProfilingModeDevices,
  kFBProfilingModeSDK, kFBProfilingModeAllLow, kFBProfilingModeAllHi
}
 Available Profiling modes. More...
 

Functions

FBProfileTaskCycle * FBGetMainThreadTaskCycle ()
 Get root task cycle. More...
 
FBProfileTaskCycle * FBGetRenderingTaskCycle ()
 Get rendering task cycle. More...
 
FBProfileTaskCycle * FBGetEvaluationTaskCycle ()
 Get evaluation task cycle. More...
 

Macro Definition Documentation

#define FBProfiler_CreateTaskCycle (   pClass,
  pR,
  pG,
  pB 
)
Value:
int gProfilingIndex_##pClass = -1; \
float gProfilingColor_##pClass[3] = { pR, pG, pB };

Profiling global variable declaration for task cycle profiling in the SDK.

This declaration should be created in the plug-in/script file where the profiling is to occur. It needs to be registered onces per task cycle, no need to create task cycles for each class object instance.

Parameters
pClassName of the task cycle. Must be unique.
pR,pG,pBTask cycle color. Used in Profiling Center for drawing.
+ Examples:

Definition at line 60 of file fbprofiler.h.

#define FBProfiling_SetupTaskCycle (   pClass)
Value:
if(gProfilingIndex_##pClass == -1) \
gProfilingIndex_##pClass = FBProfiler::TheOne().RegisterTaskCycle(#pClass,gProfilingColor_##pClass);

Profiling global variable setup.

This is the second step after calling FBProfiler_CreateTaskCycle. Should be called only once, preferably in the constructor. Task cycle will be registered for its unique index during this call.

Parameters
pClassName of the task cycle. Must be the same name that was used for FBProfiler_CreateTaskCycle.
+ Examples:

Definition at line 69 of file fbprofiler.h.

#define FBProfiling_TaskCycleIndex (   pClass)    gProfilingIndex_##pClass

Registered profiling task cycle index.

Returns the declared variable from FBProfiler_CreateTaskCycle based on the name of the task cycle provided.

Parameters
pClassName of the task cycle.
+ Examples:

Definition at line 78 of file fbprofiler.h.

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once...

Definition at line 44 of file fbprofiler.h.

Go to the source code of this file.