mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-02 09:52:27 -04:00
Fix errors when building with --override DO_PIPELINING=UNDEF
This commit is contained in:
parent
90c13cbd4e
commit
6488e46cc7
@ -772,7 +772,9 @@ set_object(const GeomVertexData *object) {
|
|||||||
_cdata = (GeomVertexData::CData *)_object->_cycler.read_unlocked(_current_thread);
|
_cdata = (GeomVertexData::CData *)_object->_cycler.read_unlocked(_current_thread);
|
||||||
_got_array_readers = false;
|
_got_array_readers = false;
|
||||||
|
|
||||||
|
#ifdef DO_PIPELINING
|
||||||
_cdata->ref();
|
_cdata->ref();
|
||||||
|
#endif // DO_PIPELINING
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -71,7 +71,10 @@ init_libpipeline() {
|
|||||||
}
|
}
|
||||||
initialized = true;
|
initialized = true;
|
||||||
|
|
||||||
|
#ifdef DO_PIPELINING
|
||||||
CycleData::init_type();
|
CycleData::init_type();
|
||||||
|
#endif
|
||||||
|
|
||||||
MainThread::init_type();
|
MainThread::init_type();
|
||||||
ExternalThread::init_type();
|
ExternalThread::init_type();
|
||||||
GenericThread::init_type();
|
GenericThread::init_type();
|
||||||
|
@ -50,10 +50,13 @@ class EXPCL_PANDA_PIPELINE CycleData
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
INLINE CycleData() = default;
|
INLINE CycleData() = default;
|
||||||
INLINE CycleData(CycleData &&from) = default;
|
INLINE CycleData(CycleData &&from) noexcept = default;
|
||||||
INLINE CycleData(const CycleData ©) = default;
|
INLINE CycleData(const CycleData ©) = default;
|
||||||
virtual ~CycleData();
|
virtual ~CycleData();
|
||||||
|
|
||||||
|
CycleData &operator = (CycleData &&from) noexcept = default;
|
||||||
|
CycleData &operator = (const CycleData ©) = default;
|
||||||
|
|
||||||
virtual CycleData *make_copy() const=0;
|
virtual CycleData *make_copy() const=0;
|
||||||
|
|
||||||
virtual void write_datagram(BamWriter *, Datagram &) const;
|
virtual void write_datagram(BamWriter *, Datagram &) const;
|
||||||
|
@ -47,6 +47,20 @@ CycleDataLockedStageReader(const CycleDataLockedStageReader<CycleDataType> ©
|
|||||||
_cycler->increment_read(_pointer);
|
_cycler->increment_read(_pointer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
template<class CycleDataType>
|
||||||
|
INLINE CycleDataLockedStageReader<CycleDataType>::
|
||||||
|
CycleDataLockedStageReader(CycleDataLockedStageReader<CycleDataType> &&from) noexcept :
|
||||||
|
_cycler(from._cycler),
|
||||||
|
_current_thread(from._current_thread),
|
||||||
|
_pointer(from._pointer),
|
||||||
|
_stage(from._stage)
|
||||||
|
{
|
||||||
|
from._pointer = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@ -64,20 +78,6 @@ operator = (const CycleDataLockedStageReader<CycleDataType> ©) {
|
|||||||
_cycler->increment_read(_pointer);
|
_cycler->increment_read(_pointer);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
template<class CycleDataType>
|
|
||||||
INLINE CycleDataLockedStageReader<CycleDataType>::
|
|
||||||
CycleDataLockedStageReader(CycleDataLockedStageReader<CycleDataType> &&from) noexcept :
|
|
||||||
_cycler(from._cycler),
|
|
||||||
_current_thread(from._current_thread),
|
|
||||||
_pointer(from._pointer),
|
|
||||||
_stage(from._stage)
|
|
||||||
{
|
|
||||||
from._pointer = nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@ -174,6 +174,17 @@ CycleDataLockedStageReader(const CycleDataLockedStageReader<CycleDataType> ©
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
template<class CycleDataType>
|
||||||
|
INLINE CycleDataLockedStageReader<CycleDataType>::
|
||||||
|
CycleDataLockedStageReader(CycleDataLockedStageReader<CycleDataType> &&from) noexcept :
|
||||||
|
_pointer(from._cycler)
|
||||||
|
{
|
||||||
|
from._pointer = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@ -183,6 +194,18 @@ operator = (const CycleDataLockedStageReader<CycleDataType> ©) {
|
|||||||
_pointer = copy._pointer;
|
_pointer = copy._pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
template<class CycleDataType>
|
||||||
|
INLINE void CycleDataLockedStageReader<CycleDataType>::
|
||||||
|
operator = (CycleDataLockedStageReader<CycleDataType> &&from) noexcept {
|
||||||
|
nassertv(_pointer == nullptr);
|
||||||
|
|
||||||
|
_pointer = from._pointer;
|
||||||
|
from._pointer = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@ -62,23 +62,6 @@ CycleDataStageWriter(const CycleDataStageWriter<CycleDataType> ©) :
|
|||||||
_cycler->increment_write(_pointer);
|
_cycler->increment_write(_pointer);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
template<class CycleDataType>
|
|
||||||
INLINE void CycleDataStageWriter<CycleDataType>::
|
|
||||||
operator = (const CycleDataStageWriter<CycleDataType> ©) {
|
|
||||||
nassertv(_pointer == nullptr);
|
|
||||||
nassertv(_current_thread == copy._current_thread);
|
|
||||||
|
|
||||||
_cycler = copy._cycler;
|
|
||||||
_pointer = copy._pointer;
|
|
||||||
_stage = copy._stage;
|
|
||||||
|
|
||||||
nassertv(_pointer != nullptr);
|
|
||||||
_cycler->increment_write(_pointer);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This flavor of the constructor elevates the pointer from the
|
* This flavor of the constructor elevates the pointer from the
|
||||||
* CycleDataLockedStageReader from a read to a write pointer (and invalidates
|
* CycleDataLockedStageReader from a read to a write pointer (and invalidates
|
||||||
@ -128,6 +111,23 @@ CycleDataStageWriter(CycleDataStageWriter<CycleDataType> &&from) noexcept :
|
|||||||
from._pointer = nullptr;
|
from._pointer = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
template<class CycleDataType>
|
||||||
|
INLINE void CycleDataStageWriter<CycleDataType>::
|
||||||
|
operator = (const CycleDataStageWriter<CycleDataType> ©) {
|
||||||
|
nassertv(_pointer == nullptr);
|
||||||
|
nassertv(_current_thread == copy._current_thread);
|
||||||
|
|
||||||
|
_cycler = copy._cycler;
|
||||||
|
_pointer = copy._pointer;
|
||||||
|
_stage = copy._stage;
|
||||||
|
|
||||||
|
nassertv(_pointer != nullptr);
|
||||||
|
_cycler->increment_write(_pointer);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@ -227,6 +227,17 @@ CycleDataStageWriter(const CycleDataStageWriter<CycleDataType> ©) :
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
template<class CycleDataType>
|
||||||
|
INLINE CycleDataStageWriter<CycleDataType>::
|
||||||
|
CycleDataStageWriter(CycleDataStageWriter<CycleDataType> &&from) noexcept :
|
||||||
|
_pointer(from._pointer)
|
||||||
|
{
|
||||||
|
from._pointer = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@ -236,6 +247,18 @@ operator = (const CycleDataStageWriter<CycleDataType> ©) {
|
|||||||
_pointer = copy._pointer;
|
_pointer = copy._pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
template<class CycleDataType>
|
||||||
|
INLINE void CycleDataStageWriter<CycleDataType>::
|
||||||
|
operator = (CycleDataStageWriter<CycleDataType> &&from) noexcept {
|
||||||
|
nassertv(_pointer == nullptr);
|
||||||
|
|
||||||
|
_pointer = from._pointer;
|
||||||
|
from._pointer = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This flavor of the constructor elevates the pointer from the
|
* This flavor of the constructor elevates the pointer from the
|
||||||
* CycleDataLockedStageReader from a read to a write pointer (and invalidates
|
* CycleDataLockedStageReader from a read to a write pointer (and invalidates
|
||||||
|
Loading…
x
Reference in New Issue
Block a user