var searchData=
[
  ['cache',['Cache',['../classignite_1_1cache_1_1Cache.html',1,'ignite::cache']]],
  ['cache',['Cache',['../classignite_1_1cache_1_1Cache.html#ad5028ce3aa42ed7f8c3e4304e7b5653b',1,'ignite::cache::Cache']]],
  ['cache_2eh',['cache.h',['../cache_8h.html',1,'']]],
  ['cache_5fentry_2eh',['cache_entry.h',['../cache__entry_8h.html',1,'']]],
  ['cache_5fentry_5fevent_2eh',['cache_entry_event.h',['../cache__entry__event_8h.html',1,'']]],
  ['cache_5fentry_5fevent_5ffilter_2eh',['cache_entry_event_filter.h',['../cache__entry__event__filter_8h.html',1,'']]],
  ['cache_5fentry_5fevent_5flistener_2eh',['cache_entry_event_listener.h',['../cache__entry__event__listener_8h.html',1,'']]],
  ['cache_5fentry_5fprocessor_2eh',['cache_entry_processor.h',['../cache__entry__processor_8h.html',1,'']]],
  ['cache_5fpeek_5fmode_2eh',['cache_peek_mode.h',['../cache__peek__mode_8h.html',1,'']]],
  ['cacheentry',['CacheEntry',['../classignite_1_1cache_1_1CacheEntry.html',1,'ignite::cache']]],
  ['cacheentry',['CacheEntry',['../classignite_1_1cache_1_1CacheEntry.html#a974bb547bc498b06202ceb3c7625119e',1,'ignite::cache::CacheEntry::CacheEntry()'],['../classignite_1_1cache_1_1CacheEntry.html#ac1652a2857db31b2d37b6b94aba0664c',1,'ignite::cache::CacheEntry::CacheEntry(const K &amp;key, const V &amp;val)'],['../classignite_1_1cache_1_1CacheEntry.html#ad84199e634b17e3d934c737f007c778f',1,'ignite::cache::CacheEntry::CacheEntry(const CacheEntry &amp;other)'],['../classignite_1_1cache_1_1CacheEntry.html#a7c9e37e44057637bdf304f7b4d5fbc3d',1,'ignite::cache::CacheEntry::CacheEntry(const std::pair&lt; K, V &gt; &amp;p)']]],
  ['cacheentryevent',['CacheEntryEvent',['../classignite_1_1cache_1_1CacheEntryEvent.html',1,'ignite::cache']]],
  ['cacheentryevent',['CacheEntryEvent',['../classignite_1_1cache_1_1CacheEntryEvent.html#a290d360557b06864780579af03bf955c',1,'ignite::cache::CacheEntryEvent::CacheEntryEvent()'],['../classignite_1_1cache_1_1CacheEntryEvent.html#a1e3a30bf0a9deb2359ed3e5b47f600ca',1,'ignite::cache::CacheEntryEvent::CacheEntryEvent(const CacheEntryEvent&lt; K, V &gt; &amp;other)']]],
  ['cacheentryeventfilter',['CacheEntryEventFilter',['../classignite_1_1cache_1_1event_1_1CacheEntryEventFilter.html',1,'ignite::cache::event']]],
  ['cacheentryeventfilter',['CacheEntryEventFilter',['../classignite_1_1cache_1_1event_1_1CacheEntryEventFilter.html#adbbbafb370f2e05c45c1c372124e3ca8',1,'ignite::cache::event::CacheEntryEventFilter']]],
  ['cacheentryeventfilterholder',['CacheEntryEventFilterHolder',['../classignite_1_1impl_1_1cache_1_1event_1_1CacheEntryEventFilterHolder.html',1,'ignite::impl::cache::event']]],
  ['cacheentryeventlistener',['CacheEntryEventListener',['../classignite_1_1cache_1_1event_1_1CacheEntryEventListener.html',1,'ignite::cache::event']]],
  ['cacheentryeventlistener',['CacheEntryEventListener',['../classignite_1_1cache_1_1event_1_1CacheEntryEventListener.html#aad93c46ce7a70ec0ea2b022054f3046c',1,'ignite::cache::event::CacheEntryEventListener']]],
  ['cacheentryprocessor',['CacheEntryProcessor',['../classignite_1_1cache_1_1CacheEntryProcessor.html',1,'ignite::cache']]],
  ['cachepeekmode',['CachePeekMode',['../structignite_1_1cache_1_1CachePeekMode.html',1,'ignite::cache']]],
  ['call',['Call',['../classignite_1_1compute_1_1Compute.html#a5ca0cdfcd21e2b6999aa3831bd53b713',1,'ignite::compute::Compute::Call()'],['../classignite_1_1compute_1_1ComputeFunc.html#a28949608551a7b65cc7a803677800cbf',1,'ignite::compute::ComputeFunc::Call()']]],
  ['callasync',['CallAsync',['../classignite_1_1compute_1_1Compute.html#a12c478a31dec5a52a0f3cc99052941ea',1,'ignite::compute::Compute']]],
  ['cancel',['Cancel',['../classignite_1_1Future.html#a01ea459a52a53e861c22d7c1ba6669d1',1,'ignite::Future::Cancel()'],['../classignite_1_1Future_3_01void_01_4.html#acca8bb514dd248d61bd28768fccb9cad',1,'ignite::Future&lt; void &gt;::Cancel()']]],
  ['clear',['Clear',['../classignite_1_1cache_1_1Cache.html#a32dff73e2749850adff3b8604a2b11b4',1,'ignite::cache::Cache::Clear()'],['../classignite_1_1cache_1_1Cache.html#a3c1b88838a8bb62d95eb6a9f2b3ca734',1,'ignite::cache::Cache::Clear(IgniteError &amp;err)'],['../classignite_1_1cache_1_1Cache.html#ac70e1d43fe5ea51cac26068feee04de1',1,'ignite::cache::Cache::Clear(const K &amp;key)'],['../classignite_1_1cache_1_1Cache.html#a111d93b727b494c0edcb6d3820c8b2a7',1,'ignite::cache::Cache::Clear(const K &amp;key, IgniteError &amp;err)']]],
  ['clearall',['ClearAll',['../classignite_1_1cache_1_1Cache.html#a75ad2c0ff97c08272a5d2e8e5ef3426f',1,'ignite::cache::Cache::ClearAll(const std::set&lt; K &gt; &amp;keys)'],['../classignite_1_1cache_1_1Cache.html#a2b9b9a2ddbe63804e3ae5ed08dd78d0e',1,'ignite::cache::Cache::ClearAll(const std::set&lt; K &gt; &amp;keys, IgniteError &amp;err)'],['../classignite_1_1cache_1_1Cache.html#a0d5547f59dee13bfa94ff3c6f633bbe3',1,'ignite::cache::Cache::ClearAll(Iter begin, Iter end)']]],
  ['cleararguments',['ClearArguments',['../classignite_1_1cache_1_1query_1_1SqlQuery.html#a8cd0867cc21f034ce965bdafa21412e6',1,'ignite::cache::query::SqlQuery::ClearArguments()'],['../classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#ad61cd53446e0e596bf4502ad0ed9217c',1,'ignite::cache::query::SqlFieldsQuery::ClearArguments()']]],
  ['close',['Close',['../classignite_1_1transactions_1_1Transaction.html#a9b274c90fd8256a90b8abf14565ea38c',1,'ignite::transactions::Transaction::Close()'],['../classignite_1_1transactions_1_1Transaction.html#af633d10c12d5ec27d7c97feade5754d0',1,'ignite::transactions::Transaction::Close(IgniteError &amp;err)'],['../classignite_1_1binary_1_1BinaryStringArrayWriter.html#af44101dd22a96409d14f4fb253f2c2e7',1,'ignite::binary::BinaryStringArrayWriter::Close()'],['../classignite_1_1binary_1_1BinaryArrayWriter.html#a47f09b6de2bd4d9d31b04fc389ad3946',1,'ignite::binary::BinaryArrayWriter::Close()'],['../classignite_1_1binary_1_1BinaryCollectionWriter.html#aaeba2731eee928480299a3310257d285',1,'ignite::binary::BinaryCollectionWriter::Close()'],['../classignite_1_1binary_1_1BinaryMapWriter.html#a887db8056137c600bfe09b89f372607c',1,'ignite::binary::BinaryMapWriter::Close()']]],
  ['collectiontype',['CollectionType',['../structignite_1_1binary_1_1CollectionType.html',1,'ignite::binary']]],
  ['commit',['Commit',['../classignite_1_1transactions_1_1Transaction.html#aa7536d728f02cfeb79266a1c1b111c37',1,'ignite::transactions::Transaction::Commit()'],['../classignite_1_1transactions_1_1Transaction.html#a6cbec407339fb78d1a50eaa165065206',1,'ignite::transactions::Transaction::Commit(IgniteError &amp;err)']]],
  ['committed',['COMMITTED',['../structignite_1_1transactions_1_1TransactionState.html#a173faba612c6a4e91c0726140d8d43f3a5431f88aadfd8a2d2c85c28471936e38',1,'ignite::transactions::TransactionState']]],
  ['committing',['COMMITTING',['../structignite_1_1transactions_1_1TransactionState.html#a173faba612c6a4e91c0726140d8d43f3a45235e5c2b18be9ac5e73d082a963328',1,'ignite::transactions::TransactionState']]],
  ['compute',['Compute',['../classignite_1_1compute_1_1Compute.html#a46471b90d45dcc498687eb2c96c21a15',1,'ignite::compute::Compute']]],
  ['compute',['Compute',['../classignite_1_1compute_1_1Compute.html',1,'ignite::compute']]],
  ['compute_2eh',['compute.h',['../compute_8h.html',1,'']]],
  ['compute_5ffunc_2eh',['compute_func.h',['../compute__func_8h.html',1,'']]],
  ['computefunc',['ComputeFunc',['../classignite_1_1compute_1_1ComputeFunc.html',1,'ignite::compute']]],
  ['constreference',['ConstReference',['../classignite_1_1ConstReference.html',1,'ignite']]],
  ['constreference',['ConstReference',['../classignite_1_1ConstReference.html#a63f63927e65aea9923eb6b207352d7e3',1,'ignite::ConstReference::ConstReference()'],['../classignite_1_1ConstReference.html#a6ea08f582e635a46f00a7c97f323118d',1,'ignite::ConstReference::ConstReference(common::ConstReferenceImplBase *ptr, ptrdiff_t offset=0)'],['../classignite_1_1ConstReference.html#a95beded1e753e6d23535304d5c3c09ea',1,'ignite::ConstReference::ConstReference(const ConstReference &amp;other)'],['../classignite_1_1ConstReference.html#ab9d8957625a01e494bf2d931c84a0bbb',1,'ignite::ConstReference::ConstReference(const ConstReference&lt; T2 &gt; &amp;other)']]],
  ['containskey',['ContainsKey',['../classignite_1_1cache_1_1Cache.html#a50dc8bbe041c277eb2c8f546cd343167',1,'ignite::cache::Cache::ContainsKey(const K &amp;key)'],['../classignite_1_1cache_1_1Cache.html#afab73114323001dbb7edebbcf011be0d',1,'ignite::cache::Cache::ContainsKey(const K &amp;key, IgniteError &amp;err)']]],
  ['containskeys',['ContainsKeys',['../classignite_1_1cache_1_1Cache.html#a2059398f1e0dcb39daf0f437a99fb9be',1,'ignite::cache::Cache::ContainsKeys(const std::set&lt; K &gt; &amp;keys)'],['../classignite_1_1cache_1_1Cache.html#a089a84634bfe5ddf0f4db0c31f7a6a26',1,'ignite::cache::Cache::ContainsKeys(InputIter begin, InputIter end)'],['../classignite_1_1cache_1_1Cache.html#a6cdca32b50dba8b000e6dcb3ed6f893a',1,'ignite::cache::Cache::ContainsKeys(const std::set&lt; K &gt; &amp;keys, IgniteError &amp;err)']]],
  ['continuous_5fquery_2eh',['continuous_query.h',['../continuous__query_8h.html',1,'']]],
  ['continuous_5fquery_5fhandle_2eh',['continuous_query_handle.h',['../continuous__query__handle_8h.html',1,'']]],
  ['continuousquery',['ContinuousQuery',['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html',1,'ignite::cache::query::continuous']]],
  ['continuousquery',['ContinuousQuery',['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#abe45cb17c5dc2754d064ff92cde29db4',1,'ignite::cache::query::continuous::ContinuousQuery::ContinuousQuery(Reference&lt; event::CacheEntryEventListener&lt; K, V &gt; &gt; lsnr)'],['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#aff44341b171e303d2cfe302498037519',1,'ignite::cache::query::continuous::ContinuousQuery::ContinuousQuery(Reference&lt; event::CacheEntryEventListener&lt; K, V &gt; &gt; lsnr, bool loc)'],['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#a26c51c268827890cecb1cbee1f917c67',1,'ignite::cache::query::continuous::ContinuousQuery::ContinuousQuery(Reference&lt; event::CacheEntryEventListener&lt; K, V &gt; &gt; lsnr, const Reference&lt; F &gt; &amp;remoteFilter)'],['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#a96f3773844787f170bbf8871bf408e73',1,'ignite::cache::query::continuous::ContinuousQuery::ContinuousQuery(Reference&lt; event::CacheEntryEventListener&lt; K, V &gt; &gt; lsnr, const Reference&lt; F &gt; &amp;remoteFilter, bool loc)']]],
  ['continuousqueryhandle',['ContinuousQueryHandle',['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQueryHandle.html#aceba2b9463abc26b5700d3d40d42dfc6',1,'ignite::cache::query::continuous::ContinuousQueryHandle::ContinuousQueryHandle()'],['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQueryHandle.html#a0c961907dd05bef57a3e6261a6a54928',1,'ignite::cache::query::continuous::ContinuousQueryHandle::ContinuousQueryHandle(impl::cache::query::continuous::ContinuousQueryHandleImpl *impl)']]],
  ['continuousqueryhandle',['ContinuousQueryHandle',['../classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQueryHandle.html',1,'ignite::cache::query::continuous']]],
  ['createcache',['CreateCache',['../classignite_1_1Ignite.html#a8f979e79ca480259d62654fe04d12e08',1,'ignite::Ignite::CreateCache(const char *name)'],['../classignite_1_1Ignite.html#a3a8bebe601fd0ae19af43f7498c9f958',1,'ignite::Ignite::CreateCache(const char *name, IgniteError &amp;err)']]]
];
