26 mVertexBuffer =
nullptr;
31 if (mTexture ==
nullptr)
44 for (
auto& item : mDrawItems)
49 item.first->doRender();
52 buffer += mLastVertexCount;
53 mCountVertex += mLastVertexCount;
63 if (0 != mCountVertex)
65#if MYGUI_DEBUG_MODE == 1
77 for (
auto& item : mDrawItems)
78 item.first->doManualRender(mVertexBuffer, mTexture, mCountVertex);
82 _target->doRender(mVertexBuffer, mTexture, mCountVertex);
89 for (VectorDrawItem::iterator
iter = mDrawItems.begin();
iter != mDrawItems.end(); ++
iter)
91 if ((*iter).first ==
_item)
93 mNeedVertexCount -= (*iter).second;
94 mDrawItems.erase(
iter);
100 if (mDrawItems.empty())
103 mNeedCompression =
true;
115#if MYGUI_DEBUG_MODE == 1
116 for (
const auto& item : mDrawItems)
123 mNeedVertexCount +=
_count;
131 for (
auto& item : mDrawItems)
133 if (item.first ==
_item)
138 mNeedVertexCount -= item.second;
139 mNeedVertexCount +=
_count;
174 return mNeedCompression;
184 return mManualRender;
199 return mNeedVertexCount;
209 return mCurrentUpdate;
214 return mCurrentVertex;
219 mLastVertexCount =
_count;
224 return mRenderTarget;
#define MYGUI_ASSERT(exp, dest)
#define MYGUI_DEBUG_ASSERT(exp, dest)
#define MYGUI_EXCEPT(dest)
virtual const std::string & getName() const =0
virtual void setVertexCount(size_t _value)=0
virtual size_t getVertexCount() const =0
virtual Vertex * lock()=0
void addDrawItem(ISubWidget *_item, size_t _count)
bool getCurrentUpdate() const
void setManualRender(bool _value)
void setTexture(ITexture *_value)
IRenderTarget * getRenderTarget()
void renderToTarget(IRenderTarget *_target, bool _update)
bool getManualRender() const
size_t getVertexCount() const
bool getNeedCompression() const
void setNeedCompression(bool _compression)
void reallockDrawItem(ISubWidget *_item, size_t _count)
size_t getNeedVertexCount() const
void removeDrawItem(ISubWidget *_item)
Vertex * getCurrentVertexBuffer() const
ITexture * getTexture() const
void setLastVertexCount(size_t _count)
static RenderManager & getInstance()