Lines Matching refs:_Channels
389 for (int i = 0; i < _Channels.Size; i++)
391 if (i == 0) memset(&_Channels[0], 0, sizeof(_Channels[0])); // channel 0 is a copy of CmdBuffer/IdxBuffer, don't destruct again
392 _Channels[i].CmdBuffer.clear();
393 _Channels[i].IdxBuffer.clear();
395 _Channels.clear();
526 int old_channels_count = _Channels.Size;
528 _Channels.resize(channels_count);
531 // _Channels[] (24/32 bytes each) hold storage that we'll swap with this->_CmdBuffer/_IdxBuffer
532 // The content of _Channels[0] at this point doesn't matter. We clear it to make state tidy in a debugger but we don't strictly need to.
533 // When we switch to the next channel, we'll copy _CmdBuffer/_IdxBuffer into _Channels[0] and then _Channels[1] into _CmdBuffer/_IdxBuffer
534 memset(&_Channels[0], 0, sizeof(ImDrawChannel));
539 IM_PLACEMENT_NEW(&_Channels[i]) ImDrawChannel();
543 _Channels[i].CmdBuffer.resize(0);
544 _Channels[i].IdxBuffer.resize(0);
546 if (_Channels[i].CmdBuffer.Size == 0)
551 _Channels[i].CmdBuffer.push_back(draw_cmd);
569 ImDrawChannel& ch = _Channels[i];
582 ImDrawChannel& ch = _Channels[i];
594 memcpy(&_Channels.Data[_ChannelsCurrent].CmdBuffer, &CmdBuffer, sizeof(CmdBuffer)); // copy 12 bytes, four times
595 memcpy(&_Channels.Data[_ChannelsCurrent].IdxBuffer, &IdxBuffer, sizeof(IdxBuffer));
597 memcpy(&CmdBuffer, &_Channels.Data[_ChannelsCurrent].CmdBuffer, sizeof(CmdBuffer));
598 memcpy(&IdxBuffer, &_Channels.Data[_ChannelsCurrent].IdxBuffer, sizeof(IdxBuffer));