Go to the documentation of this file.
27 struct PipelineCyclerTrueImpl;
40 Pipeline(
const std::string &name,
int num_stages);
43 INLINE
static Pipeline *get_render_pipeline();
47 void set_num_stages(
int num_stages);
48 INLINE
void set_min_stages(
int min_stages);
49 INLINE
int get_num_stages()
const;
51 #ifdef THREADED_PIPELINE
52 void add_cycler(PipelineCyclerTrueImpl *cycler);
53 void add_dirty_cycler(PipelineCyclerTrueImpl *cycler);
54 void remove_cycler(PipelineCyclerTrueImpl *cycler);
56 INLINE
int get_num_cyclers()
const;
57 INLINE
int get_num_dirty_cyclers()
const;
60 typedef void CallbackFunc(
TypeHandle type,
int count,
void *data);
61 void iterate_all_cycler_types(CallbackFunc *func,
void *data)
const;
62 void iterate_dirty_cycler_types(CallbackFunc *func,
void *data)
const;
63 #endif // DEBUG_THREADS
65 #endif // THREADED_PIPELINE
70 static void make_render_pipeline();
73 #ifdef THREADED_PIPELINE
78 int _num_dirty_cyclers;
82 TypeCount _all_cycler_types, _dirty_cycler_types;
84 static void inc_cycler_type(TypeCount &count,
TypeHandle type,
int addend);
85 #endif // DEBUG_THREADS
93 unsigned int _next_cycle_seq;
100 #endif // THREADED_PIPELINE
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is our own Panda specialization on the default STL map.
This class manages a staged pipeline of data, for instance the render pipeline, so that each stage of...
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A standard mutex, or mutual exclusion lock.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This just stores the pointers to implement a doubly-linked list of PipelineCyclers for a particular P...
A base class for all things which can have a name.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.