var searchData=
[
  ['cache',['Cache',['../classignite_1_1cache_1_1Cache.html',1,'ignite::cache::Cache&lt; K, V &gt;'],['../classignite_1_1cache_1_1Cache.html#ad5028ce3aa42ed7f8c3e4304e7b5653b',1,'ignite::cache::Cache::Cache()']]],
  ['cache_2eh',['cache.h',['../cache_8h.html',1,'']]],
  ['cache_5fclient_2eh',['cache_client.h',['../cache__client_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',['../core_2include_2ignite_2cache_2cache__peek__mode_8h.html',1,'']]],
  ['cacheclient',['CacheClient',['../classignite_1_1thin_1_1cache_1_1CacheClient.html',1,'ignite::thin::cache::CacheClient&lt; K, V &gt;'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#ae942c7ae26b148076557a3cc9bf31ff8',1,'ignite::thin::cache::CacheClient::CacheClient(common::concurrent::SharedPointer&lt; void &gt; impl)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#a09a6d86b6377a12c63f3509785482a08',1,'ignite::thin::cache::CacheClient::CacheClient()']]],
  ['cacheentry',['CacheEntry',['../classignite_1_1cache_1_1CacheEntry.html',1,'ignite::cache::CacheEntry&lt; K, V &gt;'],['../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&lt; K, V &gt;'],['../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&lt; K, V &gt;'],['../classignite_1_1cache_1_1event_1_1CacheEntryEventFilter.html#adbbbafb370f2e05c45c1c372124e3ca8',1,'ignite::cache::event::CacheEntryEventFilter::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&lt; K, V &gt;'],['../classignite_1_1cache_1_1event_1_1CacheEntryEventListener.html#aad93c46ce7a70ec0ea2b022054f3046c',1,'ignite::cache::event::CacheEntryEventListener::CacheEntryEventListener()']]],
  ['cacheentryprocessor',['CacheEntryProcessor',['../classignite_1_1cache_1_1CacheEntryProcessor.html',1,'ignite::cache']]],
  ['cachepeekmode',['CachePeekMode',['../structignite_1_1cache_1_1CachePeekMode.html',1,'ignite::cache::CachePeekMode'],['../structignite_1_1thin_1_1cache_1_1CachePeekMode.html',1,'ignite::thin::cache::CachePeekMode']]],
  ['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)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#a1ad68bf064989c3fcfa31b14061b888c',1,'ignite::thin::cache::CacheClient::Clear(const KeyType &amp;key)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#a83fbdf124a17e3564b3e9dc5302a2a52',1,'ignite::thin::cache::CacheClient::Clear()']]],
  ['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)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#a4e5213be2d0327207b29630527aff40a',1,'ignite::thin::cache::CacheClient::ClearAll(const Set &amp;keys)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#a8dad79827ec0125ba03a27d7eced1d97',1,'ignite::thin::cache::CacheClient::ClearAll(InIter begin, InIter 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']]],
  ['compare',['Compare',['../classignite_1_1Guid.html#a3ba5e8b983a909c490488690a63e6acb',1,'ignite::Guid']]],
  ['compute',['Compute',['../classignite_1_1compute_1_1Compute.html',1,'ignite::compute::Compute'],['../classignite_1_1compute_1_1Compute.html#a46471b90d45dcc498687eb2c96c21a15',1,'ignite::compute::Compute::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&lt; T &gt;'],['../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)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#adb51208ea8838db113f5cd1ed0a3706b',1,'ignite::thin::cache::CacheClient::ContainsKey()']]],
  ['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)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#a68f05513691c5de09f3d2d557ac61394',1,'ignite::thin::cache::CacheClient::ContainsKeys(const Set &amp;keys)'],['../classignite_1_1thin_1_1cache_1_1CacheClient.html#a5e2ded2d1950dc4556ee4dbcf849a9eb',1,'ignite::thin::cache::CacheClient::ContainsKeys(InIter begin, InIter end)']]],
  ['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&lt; K, V &gt;'],['../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',1,'ignite::cache::query::continuous::ContinuousQueryHandle&lt; K, V &gt;'],['../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)']]],
  ['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)'],['../classignite_1_1thin_1_1IgniteClient.html#ae07b0dbd827326f1c8eb3d34f1d886ee',1,'ignite::thin::IgniteClient::CreateCache()']]]
];
