本文整理汇总了C++中ForEachItemIn函数的典型用法代码示例。如果您正苦于以下问题:C++ ForEachItemIn函数的具体用法?C++ ForEachItemIn怎么用?C++ ForEachItemIn使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ForEachItemIn函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ForEachItemIn
void CSteppedConjunctionOptimizer::finishCandidates()
{
rootActivity->resetEOF();
ForEachItemIn(i1, inputs)
inputs.item(i1).setRestriction(NULL, 0);
ForEachItemIn(i2, joins)
joins.item(i2).stopRestrictedJoin();
ForEachItemIn(i3, pseudoInputs)
pseudoInputs.item(i3).clearPending();
if (prevEqualityRow)
inputAllocator->releaseRow(prevEqualityRow);
prevEqualityRow = equalityRow;
equalityRow = NULL;
}
示例2: ForEachItemIn
void CHThorNaryActivity::done()
{
ForEachItemIn(i, expandedInputs)
expandedInputs.item(i)->done();
expandedInputs.kill();
CHThorMultiInputActivity::done();
}
示例3: flushTraceSummary
virtual void flushTraceSummary()
{
StringBuffer logstr;
logstr.appendf("activeReqs=").append(m_active).append(';');
logstr.append("user=").append(queryUserId());
if (m_peer.length())
logstr.append('@').append(m_peer.get());
logstr.append(';');
if (m_hasException)
{
logstr.appendf("[email protected]%dms=%d;", m_exceptionTime, m_exceptionCode);
}
StringBuffer value;
value.append("total=").appendulong(m_processingTime).append("ms");
if (m_hasException || (getEspLogLevel() > LogNormal))
{
m_traceValues.append(value.str());
if (m_traceValues.length())
{
ForEachItemIn(idx, m_traceValues)
logstr.append(m_traceValues.item(idx)).append(";");
m_traceValues.kill();
}
}
else
{
logstr.appendf("%s;", value.str());
}
DBGLOG("TxSummary[%s]", logstr.str());
}
示例4: waitForStrands
virtual void waitForStrands()
{
producerStopSem.signal(threads.ordinality());
ForEachItemIn(i, threads)
threads.item(i).join();
threads.kill();
}
示例5: ForEachItemIn
void CachedPasswordProvider::serialize(MemoryBuffer & out)
{
unsigned num = passwords.ordinality();
out.append(num);
ForEachItemIn(idx, passwords)
passwords.item(idx).serialize(out);
}
示例6: processCMD
virtual int processCMD()
{
Owned<IClientWsPackageProcess> packageProcessClient = createCmdClient(WsPackageProcess, *this);
StringBuffer pkgInfo;
pkgInfo.loadFile(optFileName);
fprintf(stdout, "\n ... adding package map %s now\n\n", optFileName.sget());
Owned<IClientAddPackageRequest> request = packageProcessClient->createAddPackageRequest();
request->setActivate(optActivate);
request->setInfo(pkgInfo);
request->setTarget(optTarget);
request->setPackageMap(optPackageMapId);
request->setProcess(optProcess);
request->setDaliIp(optDaliIP);
request->setOverWrite(optOverWrite);
request->setGlobalScope(optGlobalScope);
request->setSourceProcess(optSourceProcess);
Owned<IClientAddPackageResponse> resp = packageProcessClient->AddPackage(request);
if (resp->getExceptions().ordinality())
outputMultiExceptions(resp->getExceptions());
StringArray ¬Found = resp->getFilesNotFound();
if (notFound.length())
{
fputs("\nFiles defined in package but not found in DFS:\n", stderr);
ForEachItemIn(i, notFound)
fprintf(stderr, " %s\n", notFound.item(i));
fputs("\n", stderr);
}
return 0;
}
示例7: waitForProducers
//Wait for all active producers to complete - including calling stop on their inputs
void waitForProducers()
{
producerStopSem.signal(numProducers);
ForEachItemIn(i, threads)
threads.item(i).join();
threads.kill();
}
示例8: stopActiveProducers
//Stop producers that have already been started()
virtual void stopActiveProducers()
{
producerStopSem.signal(numProducers);
ForEachItemIn(i, threads)
threads.item(i).join();
threads.kill();
}
示例9: getNumUniqueExpressions
unsigned getNumUniqueExpressions(const HqlExprArray & exprs)
{
TransformMutexBlock block;
ExpressionStatsInfo info;
ForEachItemIn(i, exprs)
calcNumUniqueExpressions(&exprs.item(i),info);
return info.count;
}
示例10: ForEachItemIn
void CCassandraLogAgent::createTable(const char *dbName, const char *tableName, StringArray& columnNames, StringArray& columnTypes, const char* keys)
{
StringBuffer fields;
ForEachItemIn(i, columnNames)
fields.appendf("%s %s,", columnNames.item(i), columnTypes.item(i));
VStringBuffer createTableSt("CREATE TABLE IF NOT EXISTS %s.%s (%s PRIMARY KEY (%s));", dbName, tableName, fields.str(), keys);
executeSimpleStatement(createTableSt.str());
}
示例11: ForEachItemIn
void ScopeConsistencyChecker::checkConsistent(IHqlExpression * root, const HqlExprArray & _activeTables)
{
ForEachItemIn(i, _activeTables)
activeTables.append(OLINK(_activeTables.item(i)));
if (root->isDataset())
pushScope();
analyse(root, 0);
if (root->isDataset())
popScope();
}
示例12: ForEachItemIn
void CSlavePartMapping::getParts(unsigned i, IArrayOf<IPartDescriptor> &parts)
{
if (local)
i = 0;
if (i>=maps.ordinality()) return;
CSlaveMap &map = maps.item(i);
ForEachItemIn(m, map)
parts.append(*LINK(&map.item(m)));
}
示例13: ForEachItemIn
void LogicalGraphCreator::createLogicalGraph(HqlExprArray & exprs)
{
graph.setown(createPTree("graph"));
// beginSubGraph(NULL, false);
ForEachItemIn(i, exprs)
createRootGraphActivity(&exprs.item(i));
// endSubGraph();
wu->createGraph("Logical", NULL, GraphTypeEcl, graph.getClear(), 0);
}
示例14: ForEachItemIn
void LogicalGraphCreator::createLogicalGraph(HqlExprArray & exprs)
{
graph.setown(createPTree("graph"));
// beginSubGraph(NULL, false);
ForEachItemIn(i, exprs)
createRootGraphActivity(&exprs.item(i));
// endSubGraph();
Owned<IWUGraph> wug = wu->updateGraph("Logical");
wug->setXGMMLTree(graph.getClear());
wug->setType(GraphTypeEcl);
}
示例15: queryHelper
void CDiskReadMasterBase::serializeSlaveData(MemoryBuffer &dst, unsigned slave)
{
IHThorDiskReadBaseArg *helper = (IHThorDiskReadBaseArg *) queryHelper();
dst.append(helper->getFileName());
dst.append(subfileLogicalFilenames.ordinality());
if (subfileLogicalFilenames.ordinality())
{
ForEachItemIn(s, subfileLogicalFilenames)
dst.append(subfileLogicalFilenames.item(s));
}
if (mapping)
mapping->serializeMap(slave, dst);
else
CSlavePartMapping::serializeNullMap(dst);
}