CFx SDK Documentation
2024 SP0
Loading...
Searching...
No Matches
SDK
CFx
dd_inc
Tr
sg
TrRndSgTaskScheduler.h
Go to the documentation of this file.
1
2
// Copyright (C) 2002-2022, Open Design Alliance (the "Alliance").
3
// All rights reserved.
4
//
5
// This software and its documentation and related materials are owned by
6
// the Alliance. The software may only be incorporated into application
7
// programs owned by members of the Alliance, subject to a signed
8
// Membership Agreement and Supplemental Software License Agreement with the
9
// Alliance. The structure and organization of this software are the valuable
10
// trade secrets of the Alliance and its suppliers. The software is also
11
// protected by copyright law and international treaty provisions. Application
12
// programs incorporating this software must include the following statement
13
// with their copyright notices:
14
//
15
// This application incorporates Open Design Alliance software pursuant to a license
16
// agreement with Open Design Alliance.
17
// Open Design Alliance Copyright (C) 2002-2022 by Open Design Alliance.
18
// All rights reserved.
19
//
20
// By use of this software, its documentation or related materials, you
21
// acknowledge and accept the above terms.
23
// External Scene Graph tasks scheduler
24
25
#ifndef ODTRRNDSGSCENEGRAPHTASKSCHEDULER
26
#define ODTRRNDSGSCENEGRAPHTASKSCHEDULER
27
28
#include "
RxObject.h
"
29
30
#include "
TD_PackPush.h
"
31
36
class
OdTrRndSgSceneGraphTaskScheduler
:
public
OdRxObject
37
{
38
public
:
39
enum
TaskType
40
{
41
kGenericTask
= 0,
// Generic Scene Graph tasks, like trees balancing and etc.
42
kAuxiliaryTask
,
// Auxiliary Scene Graph tasks, like intersections computation and etc.
43
kMiscellaneousTask
// Miscellaneous Scene Graph tasks, like graphic streams postprocessing and etc.
44
};
45
enum
ProcessType
46
{
47
kProcessTask
= 0,
// Continue task processing
48
kInformCompletion
,
// Continue task processing and call status completion callback
49
kSkipTask
,
// Skip this task processing and find next
50
kBreakProcess
// Break tasks processing
51
};
52
public
:
53
OdTrRndSgSceneGraphTaskScheduler
() { }
54
60
virtual
bool
beginQueueProcessing
() {
return
true
; }
64
virtual
void
endQueueProcessing
() { }
65
72
virtual
ProcessType
beginTaskProcessing
(
TaskType
/*taskType*/
) {
return
kProcessTask
; }
78
virtual
void
endTaskProcessing
(
TaskType
/*taskType*/
,
bool
/*bStatus*/
) { }
79
};
80
85
typedef
OdSmartPtr<OdTrRndSgSceneGraphTaskScheduler>
OdTrRndSgSceneGraphTaskSchedulerPtr
;
86
87
#include "
TD_PackPop.h
"
88
89
#endif
// ODTRRNDSGSCENEGRAPHTASKSCHEDULER
RxObject.h
TD_PackPop.h
TD_PackPush.h
OdTrRndSgSceneGraphTaskSchedulerPtr
OdSmartPtr< OdTrRndSgSceneGraphTaskScheduler > OdTrRndSgSceneGraphTaskSchedulerPtr
Definition:
TrRndSgTaskScheduler.h:85
OdRxObject
Definition:
RxObject.h:564
OdSmartPtr
Definition:
SmartPtr.h:58
OdTrRndSgSceneGraphTaskScheduler
Definition:
TrRndSgTaskScheduler.h:37
OdTrRndSgSceneGraphTaskScheduler::TaskType
TaskType
Definition:
TrRndSgTaskScheduler.h:40
OdTrRndSgSceneGraphTaskScheduler::kGenericTask
@ kGenericTask
Definition:
TrRndSgTaskScheduler.h:41
OdTrRndSgSceneGraphTaskScheduler::kMiscellaneousTask
@ kMiscellaneousTask
Definition:
TrRndSgTaskScheduler.h:43
OdTrRndSgSceneGraphTaskScheduler::kAuxiliaryTask
@ kAuxiliaryTask
Definition:
TrRndSgTaskScheduler.h:42
OdTrRndSgSceneGraphTaskScheduler::OdTrRndSgSceneGraphTaskScheduler
OdTrRndSgSceneGraphTaskScheduler()
Definition:
TrRndSgTaskScheduler.h:53
OdTrRndSgSceneGraphTaskScheduler::endQueueProcessing
virtual void endQueueProcessing()
Definition:
TrRndSgTaskScheduler.h:64
OdTrRndSgSceneGraphTaskScheduler::beginTaskProcessing
virtual ProcessType beginTaskProcessing(TaskType)
Definition:
TrRndSgTaskScheduler.h:72
OdTrRndSgSceneGraphTaskScheduler::ProcessType
ProcessType
Definition:
TrRndSgTaskScheduler.h:46
OdTrRndSgSceneGraphTaskScheduler::kInformCompletion
@ kInformCompletion
Definition:
TrRndSgTaskScheduler.h:48
OdTrRndSgSceneGraphTaskScheduler::kSkipTask
@ kSkipTask
Definition:
TrRndSgTaskScheduler.h:49
OdTrRndSgSceneGraphTaskScheduler::kBreakProcess
@ kBreakProcess
Definition:
TrRndSgTaskScheduler.h:50
OdTrRndSgSceneGraphTaskScheduler::kProcessTask
@ kProcessTask
Definition:
TrRndSgTaskScheduler.h:47
OdTrRndSgSceneGraphTaskScheduler::endTaskProcessing
virtual void endTaskProcessing(TaskType, bool)
Definition:
TrRndSgTaskScheduler.h:78
OdTrRndSgSceneGraphTaskScheduler::beginQueueProcessing
virtual bool beginQueueProcessing()
Definition:
TrRndSgTaskScheduler.h:60
Generated on Wed Apr 5 2023 17:29:24