mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-30 08:44:19 -04:00
gobj: Enable slightly more efficient GeomVertexReader/Writer ctor
This allows moving an existing PT(GeomVertexData) into the object, preventing an extra refcount increase.
This commit is contained in:
parent
902ada10b8
commit
79714392cb
@ -29,9 +29,9 @@ GeomVertexReader(Thread *current_thread) :
|
|||||||
* object.
|
* object.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexReader::
|
INLINE GeomVertexReader::
|
||||||
GeomVertexReader(const GeomVertexData *vertex_data,
|
GeomVertexReader(CPT(GeomVertexData) vertex_data,
|
||||||
Thread *current_thread) :
|
Thread *current_thread) :
|
||||||
_vertex_data(vertex_data),
|
_vertex_data(std::move(vertex_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
@ -43,10 +43,10 @@ GeomVertexReader(const GeomVertexData *vertex_data,
|
|||||||
* data type.
|
* data type.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexReader::
|
INLINE GeomVertexReader::
|
||||||
GeomVertexReader(const GeomVertexData *vertex_data,
|
GeomVertexReader(CPT(GeomVertexData) vertex_data,
|
||||||
CPT_InternalName name,
|
CPT_InternalName name,
|
||||||
Thread *current_thread) :
|
Thread *current_thread) :
|
||||||
_vertex_data(vertex_data),
|
_vertex_data(std::move(vertex_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
@ -58,9 +58,9 @@ GeomVertexReader(const GeomVertexData *vertex_data,
|
|||||||
* only.
|
* only.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexReader::
|
INLINE GeomVertexReader::
|
||||||
GeomVertexReader(const GeomVertexArrayData *array_data,
|
GeomVertexReader(CPT(GeomVertexArrayData) array_data,
|
||||||
Thread *current_thread) :
|
Thread *current_thread) :
|
||||||
_array_data(array_data),
|
_array_data(std::move(array_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
@ -71,9 +71,9 @@ GeomVertexReader(const GeomVertexArrayData *array_data,
|
|||||||
* only.
|
* only.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexReader::
|
INLINE GeomVertexReader::
|
||||||
GeomVertexReader(const GeomVertexArrayData *array_data, int column,
|
GeomVertexReader(CPT(GeomVertexArrayData) array_data, int column,
|
||||||
Thread *current_thread) :
|
Thread *current_thread) :
|
||||||
_array_data(array_data),
|
_array_data(std::move(array_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
|
@ -47,14 +47,14 @@
|
|||||||
class EXPCL_PANDA_GOBJ GeomVertexReader : public GeomEnums {
|
class EXPCL_PANDA_GOBJ GeomVertexReader : public GeomEnums {
|
||||||
PUBLISHED:
|
PUBLISHED:
|
||||||
INLINE GeomVertexReader(Thread *current_thread = Thread::get_current_thread());
|
INLINE GeomVertexReader(Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexReader(const GeomVertexData *vertex_data,
|
INLINE GeomVertexReader(CPT(GeomVertexData) vertex_data,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexReader(const GeomVertexData *vertex_data,
|
INLINE GeomVertexReader(CPT(GeomVertexData) vertex_data,
|
||||||
CPT_InternalName name,
|
CPT_InternalName name,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexReader(const GeomVertexArrayData *array_data,
|
INLINE GeomVertexReader(CPT(GeomVertexArrayData) array_data,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexReader(const GeomVertexArrayData *array_data,
|
INLINE GeomVertexReader(CPT(GeomVertexArrayData) array_data,
|
||||||
int column,
|
int column,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
|
|
||||||
|
@ -29,8 +29,8 @@ GeomVertexWriter(Thread *current_thread) :
|
|||||||
* object.
|
* object.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexWriter::
|
INLINE GeomVertexWriter::
|
||||||
GeomVertexWriter(GeomVertexData *vertex_data, Thread *current_thread) :
|
GeomVertexWriter(PT(GeomVertexData) vertex_data, Thread *current_thread) :
|
||||||
_vertex_data(vertex_data),
|
_vertex_data(std::move(vertex_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
@ -42,9 +42,9 @@ GeomVertexWriter(GeomVertexData *vertex_data, Thread *current_thread) :
|
|||||||
* data type.
|
* data type.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexWriter::
|
INLINE GeomVertexWriter::
|
||||||
GeomVertexWriter(GeomVertexData *vertex_data, CPT_InternalName name,
|
GeomVertexWriter(PT(GeomVertexData) vertex_data, CPT_InternalName name,
|
||||||
Thread *current_thread) :
|
Thread *current_thread) :
|
||||||
_vertex_data(vertex_data),
|
_vertex_data(std::move(vertex_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
@ -56,9 +56,9 @@ GeomVertexWriter(GeomVertexData *vertex_data, CPT_InternalName name,
|
|||||||
* only.
|
* only.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexWriter::
|
INLINE GeomVertexWriter::
|
||||||
GeomVertexWriter(GeomVertexArrayData *array_data,
|
GeomVertexWriter(PT(GeomVertexArrayData) array_data,
|
||||||
Thread *current_thread) :
|
Thread *current_thread) :
|
||||||
_array_data(array_data),
|
_array_data(std::move(array_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
@ -69,9 +69,9 @@ GeomVertexWriter(GeomVertexArrayData *array_data,
|
|||||||
* only.
|
* only.
|
||||||
*/
|
*/
|
||||||
INLINE GeomVertexWriter::
|
INLINE GeomVertexWriter::
|
||||||
GeomVertexWriter(GeomVertexArrayData *array_data, int column,
|
GeomVertexWriter(PT(GeomVertexArrayData) array_data, int column,
|
||||||
Thread *current_thread) :
|
Thread *current_thread) :
|
||||||
_array_data(array_data),
|
_array_data(std::move(array_data)),
|
||||||
_current_thread(current_thread)
|
_current_thread(current_thread)
|
||||||
{
|
{
|
||||||
initialize();
|
initialize();
|
||||||
|
@ -55,14 +55,14 @@
|
|||||||
class EXPCL_PANDA_GOBJ GeomVertexWriter : public GeomEnums {
|
class EXPCL_PANDA_GOBJ GeomVertexWriter : public GeomEnums {
|
||||||
PUBLISHED:
|
PUBLISHED:
|
||||||
INLINE GeomVertexWriter(Thread *current_thread = Thread::get_current_thread());
|
INLINE GeomVertexWriter(Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexWriter(GeomVertexData *vertex_data,
|
INLINE GeomVertexWriter(PT(GeomVertexData) vertex_data,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexWriter(GeomVertexData *vertex_data,
|
INLINE GeomVertexWriter(PT(GeomVertexData) vertex_data,
|
||||||
CPT_InternalName name,
|
CPT_InternalName name,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexWriter(GeomVertexArrayData *array_data,
|
INLINE GeomVertexWriter(PT(GeomVertexArrayData) array_data,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
INLINE GeomVertexWriter(GeomVertexArrayData *array_data,
|
INLINE GeomVertexWriter(PT(GeomVertexArrayData) array_data,
|
||||||
int column,
|
int column,
|
||||||
Thread *current_thread = Thread::get_current_thread());
|
Thread *current_thread = Thread::get_current_thread());
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user