mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-30 08:44:19 -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);
|
||||
_got_array_readers = false;
|
||||
|
||||
#ifdef DO_PIPELINING
|
||||
_cdata->ref();
|
||||
#endif // DO_PIPELINING
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -71,7 +71,10 @@ init_libpipeline() {
|
||||
}
|
||||
initialized = true;
|
||||
|
||||
#ifdef DO_PIPELINING
|
||||
CycleData::init_type();
|
||||
#endif
|
||||
|
||||
MainThread::init_type();
|
||||
ExternalThread::init_type();
|
||||
GenericThread::init_type();
|
||||
|
@ -50,10 +50,13 @@ class EXPCL_PANDA_PIPELINE CycleData
|
||||
{
|
||||
public:
|
||||
INLINE CycleData() = default;
|
||||
INLINE CycleData(CycleData &&from) = default;
|
||||
INLINE CycleData(CycleData &&from) noexcept = default;
|
||||
INLINE CycleData(const CycleData ©) = default;
|
||||
virtual ~CycleData();
|
||||
|
||||
CycleData &operator = (CycleData &&from) noexcept = default;
|
||||
CycleData &operator = (const CycleData ©) = default;
|
||||
|
||||
virtual CycleData *make_copy() const=0;
|
||||
|
||||
virtual void write_datagram(BamWriter *, Datagram &) const;
|
||||
|
@ -47,6 +47,20 @@ CycleDataLockedStageReader(const CycleDataLockedStageReader<CycleDataType> ©
|
||||
_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);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
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;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
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);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
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
|
||||
* CycleDataLockedStageReader from a read to a write pointer (and invalidates
|
||||
@ -128,6 +111,23 @@ CycleDataStageWriter(CycleDataStageWriter<CycleDataType> &&from) noexcept :
|
||||
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;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
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
|
||||
* CycleDataLockedStageReader from a read to a write pointer (and invalidates
|
||||
|
Loading…
x
Reference in New Issue
Block a user