本文整理汇总了C++中WDL_PtrList::Insert方法的典型用法代码示例。如果您正苦于以下问题:C++ WDL_PtrList::Insert方法的具体用法?C++ WDL_PtrList::Insert怎么用?C++ WDL_PtrList::Insert使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WDL_PtrList
的用法示例。
在下文中一共展示了WDL_PtrList::Insert方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: UpdateMarkerRegionCache
// return a bitmask: &SNM_MARKER_MASK: marker update, &SNM_REGION_MASK: region update
int UpdateMarkerRegionCache()
{
int updateFlags=0;
int i=0, x=0, num, col; double pos, rgnend; const char* name; bool isRgn;
// added/updated markers/regions?
while ((x = EnumProjectMarkers3(NULL, x, &isRgn, &pos, &rgnend, &name, &num, &col)))
{
MarkerRegion* m = g_mkrRgnCache.Get(i);
if (!m || (m && !m->Compare(isRgn, pos, rgnend, name, num, col)))
{
if (m) g_mkrRgnCache.Delete(i, true);
g_mkrRgnCache.Insert(i, new MarkerRegion(isRgn, pos, rgnend, name, num, col));
updateFlags |= (isRgn ? SNM_REGION_MASK : SNM_MARKER_MASK);
}
i++;
}
// removed markers/regions?
for (int j=g_mkrRgnCache.GetSize()-1; j>=i; j--) {
if (MarkerRegion* m = g_mkrRgnCache.Get(j))
updateFlags |= (m->IsRegion() ? SNM_REGION_MASK : SNM_MARKER_MASK);
g_mkrRgnCache.Delete(j, true);
}
// project time mode update?
static int sPrevTimemode = *(int*)GetConfigVar("projtimemode");
if (updateFlags != (SNM_MARKER_MASK|SNM_REGION_MASK))
if (int* timemode = (int*)GetConfigVar("projtimemode"))
if (*timemode != sPrevTimemode) {
sPrevTimemode = *timemode;
return SNM_MARKER_MASK|SNM_REGION_MASK;
}
return updateFlags;
}
示例2: OscInit
bool OscInit(OscHandler* osc)
{
KillOscThread();
if (s_osc_handlers.Find(osc) < 0)
{
// insert at the top, so new listeners will block existing handlers
s_osc_handlers.Insert(0, osc);
}
StartOscThread();
return true;
}