本文整理汇总了C++中Index::Contains方法的典型用法代码示例。如果您正苦于以下问题:C++ Index::Contains方法的具体用法?C++ Index::Contains怎么用?C++ Index::Contains使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Index
的用法示例。
在下文中一共展示了Index::Contains方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AddIndex
OP_STATUS IntersectionIndexGroup::AddIndex(index_gid_t index_id)
{
if (m_indexes.Contains(index_id))
return OpStatus::OK;
Index* index = m_indexer->GetIndexById(index_id);
if (index)
{
RETURN_IF_ERROR(index->PreFetch());
OpINT32Vector all_messages;
RETURN_IF_ERROR(m_index->GetAllMessages(all_messages));
for (UINT32 i = 0; i < all_messages.GetCount(); i++)
{
if (!index->Contains(all_messages.Get(i)))
{
RETURN_IF_ERROR(m_index->RemoveMessage(all_messages.Get(i)));
}
}
RETURN_IF_ERROR(m_indexes.Insert(index_id));
RETURN_IF_ERROR(index->AddObserver(this));
}
return OpStatus::OK;
}
示例2: MessageRemoved
OP_STATUS UnionIndexGroup::MessageRemoved(Index* index, message_gid_t message, BOOL setting_keyword)
{
for (unsigned i = 0; i < m_indexes.GetCount(); i++)
{
Index* index = m_indexer->GetIndexById(m_indexes.GetByIndex(i));
if (index && index->Contains(message))
{
return OpStatus::OK;
}
}
return m_index->RemoveMessage(message);
}
示例3: MessageAdded
OP_STATUS IntersectionIndexGroup::MessageAdded(Index* index, message_gid_t message, BOOL setting_keyword)
{
if (index == m_base || m_indexes.Contains(index->GetId()))
{
if (m_base->Contains(message))
{
for (unsigned i = 0; i < m_indexes.GetCount(); i++)
{
Index * index = m_indexer->GetIndexById(m_indexes.GetByIndex(i));
if (index && !index->Contains(message))
return OpStatus::OK;
}
return m_index->NewMessage(message);
}
}
return OpStatus::OK;
}