<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- Yandex.Metrika counter -->
    <script type="text/javascript" >
      (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
      m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
      (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
    
      ym(72949126, "init", {
           clickmap:true,
           trackLinks:true,
           accurateTrackBounce:true,
           webvisor:true
      });
    </script>
    <noscript><div><img src="https://mc.yandex.ru/watch/72949126" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
    <!-- /Yandex.Metrika counter -->
<script type='text/javascript'>
    window.__lo_site_id = 284467;
    
      (function() {
        var wa = document.createElement('script'); wa.type = 'text/javascript'; wa.async = true;
        wa.src = 'https://d10lpsik1i8c69.cloudfront.net/w.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(wa, s);
        })();
      </script>
<link rel="canonical" href="https://ignite.apache.org/releases/latest/cppdoc/functions_s.html" />
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>&nbsp; Apache Ignite C++: Class Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<script async src="https://www.googletagmanager.com/gtag/js?id=UA-61232409-1"></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('js', new Date());
    
      gtag('config', 'UA-61232409-1');
    </script></head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="ignite_logo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">&nbsp; Apache Ignite C++
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="contents">
<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>

<h3><a id="index_s"></a>- s -</h3><ul>
<li>ScanQuery()
: <a class="el" href="classignite_1_1cache_1_1query_1_1ScanQuery.html#a5a55d6bee94c6493eaa28a80998bdeda">ignite::cache::query::ScanQuery</a>
</li>
<li>SERIALIZABLE
: <a class="el" href="structignite_1_1thin_1_1transactions_1_1TransactionIsolation.html#a469b243892db2781f60f5c3f79b4ed75afc3d8c7accad3ec21a0052ab3bf9558d">ignite::thin::transactions::TransactionIsolation</a>
, <a class="el" href="structignite_1_1transactions_1_1TransactionIsolation.html#a3ac24463ce4e1f63186a974c33c6b3e3a8dadab2cb79ed7d2d0ed91f692fa3b27">ignite::transactions::TransactionIsolation</a>
</li>
<li>SetActive()
: <a class="el" href="classignite_1_1cluster_1_1IgniteCluster.html#a19bf40d6419f54113c40cf230db5555a">ignite::cluster::IgniteCluster</a>
, <a class="el" href="classignite_1_1Ignite.html#a481375583b96f54119ef604338cfc5b8">ignite::Ignite</a>
</li>
<li>SetBaselineTopologyVersion()
: <a class="el" href="classignite_1_1cluster_1_1IgniteCluster.html#a0b6797cbceb7ea170ef25889a39ee19a">ignite::cluster::IgniteCluster</a>
</li>
<li>SetBufferSize()
: <a class="el" href="classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#a755b5cf8a7ea00e0b19c37b6b589efc3">ignite::cache::query::continuous::ContinuousQuery&lt; K, V &gt;</a>
</li>
<li>SetCollocated()
: <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#ab8c90114c909ac06b7724cc03359dde1">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetConnectionsLimit()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#a28288d387e4126c09f09d9eec46baa2e">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetDistributedJoins()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#a83bdd97f4a9f3f13f23103ad018b84de">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1SqlQuery.html#aeb4896f55a3231852a8840eab1758f3c">ignite::cache::query::SqlQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#a2fa4502eac2365adc44b1f6805e796d5">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetEndPoints()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#a57dbf8199cd60518c80dd95b0dead9e8">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetEnforceJoinOrder()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#ad489c8b5da47b8c6a0e8fd1dd758daa2">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#ad8cc2c1f27f97f47b6324952b2a38829">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetError()
: <a class="el" href="classignite_1_1IgniteError.html#a960372e47aaa23149a70af53582fa04e">ignite::IgniteError</a>
</li>
<li>SetLazy()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#a82f2a74cd3dc9c55c3ed3f4ec25c5a33">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#af9dbca1ae3f00409bbcb1dec1de7362d">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetListener()
: <a class="el" href="classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#a88f43a94603ad2b6a0bb39cff88eaded">ignite::cache::query::continuous::ContinuousQuery&lt; K, V &gt;</a>
</li>
<li>SetLocal()
: <a class="el" href="classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#aef8dbf5f7809d8104963fb50aa7db40c">ignite::cache::query::continuous::ContinuousQuery&lt; K, V &gt;</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1ScanQuery.html#a353a5b9cedbe16411aa0341328126856">ignite::cache::query::ScanQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#ac20c97dfefd05e690242a918022a5bbf">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1SqlQuery.html#a907b6e4a5c4ea7ca6f80a3b687091f22">ignite::cache::query::SqlQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1TextQuery.html#a2d4e4aac39e4c1ea3ad1499b135b6012">ignite::cache::query::TextQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#a893be044ceb7446422fa3fa07cb510f5">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetMaxRows()
: <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#a7c01e7005bea8e0f2a33de44eedee22f">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetPageSize()
: <a class="el" href="classignite_1_1cache_1_1query_1_1ScanQuery.html#ad459033dcf311b1b25e46fb1dbb2b55e">ignite::cache::query::ScanQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#acd61be0cefd04d766a4418686eb49f4a">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1SqlQuery.html#aadf500528211e00a43cf7b87c0d0051f">ignite::cache::query::SqlQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1TextQuery.html#a1c385b1e320ec6a6387dea04d10f0f59">ignite::cache::query::TextQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#a19ffc88e314d6935766649f338cd6f34">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetPartition()
: <a class="el" href="classignite_1_1cache_1_1query_1_1ScanQuery.html#a55fb7a45eb8520fd949c0f749dfa53ba">ignite::cache::query::ScanQuery</a>
</li>
<li>SetPartitionAwareness()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#a9b85835768eae4e4c507016f8e92ca9f">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetPassword()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#abcb462bcae7e29f81d6ee9ff71e1321d">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetRollbackOnly()
: <a class="el" href="classignite_1_1transactions_1_1Transaction.html#a346e9f015ab64052605014bedfe8dcb9">ignite::transactions::Transaction</a>
</li>
<li>SetSchema()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#af2bca796c1ed5fa8357c49946349687e">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#ab901b3fd03c8c5a49326db1c47c73538">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetSql()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#a647110f3e40f812667f43db86d04dd81">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1SqlQuery.html#aa4e9e9a79ea5ddbf8c8c0aada68f3b6d">ignite::cache::query::SqlQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#af4da7dc1afdb15f402b2547fdb65ca65">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetSslCaFile()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#aaac36e365275decb20dc8767c3587cb5">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetSslCertFile()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#a41b693eb6303d4617bc338b6afa77318">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetSslKeyFile()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#aa21d7538c5aebb18be6593eb629dc464">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetSslMode()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#a254e0351a4430280c81ee7cb1ad324e3">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetText()
: <a class="el" href="classignite_1_1cache_1_1query_1_1TextQuery.html#a89aae4e4a05f41976c103a461d953e0e">ignite::cache::query::TextQuery</a>
</li>
<li>SetTimeInterval()
: <a class="el" href="classignite_1_1cache_1_1query_1_1continuous_1_1ContinuousQuery.html#a6abb33c89aab001f5035ea913c200fdb">ignite::cache::query::continuous::ContinuousQuery&lt; K, V &gt;</a>
</li>
<li>SetTimeout()
: <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#ac092c2f33ba4db92caf7a86533dd22a3">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SetTxTimeoutOnPartitionMapExchange()
: <a class="el" href="classignite_1_1cluster_1_1IgniteCluster.html#aebf7dcf1f1d51e004336c227876945d6">ignite::cluster::IgniteCluster</a>
</li>
<li>SetType()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlQuery.html#a5609ce4f4005383181bf24c0768a7846">ignite::cache::query::SqlQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1TextQuery.html#a5fb83c95ebefe5b14fdafb839d460538">ignite::cache::query::TextQuery</a>
</li>
<li>SetUser()
: <a class="el" href="classignite_1_1thin_1_1IgniteClientConfiguration.html#a2699b733dec083ad203827237da76cbe">ignite::thin::IgniteClientConfiguration</a>
</li>
<li>SetValue()
: <a class="el" href="classignite_1_1cache_1_1MutableCacheEntry.html#a66b8f2c851cfd737f55042a8fb2791c4">ignite::cache::MutableCacheEntry&lt; K, V &gt;</a>
</li>
<li>SHA1_LENGTH
: <a class="el" href="structignite_1_1IgniteProductVersion.html#a6902d608e6e43e257c63fd4c66a120a1">ignite::IgniteProductVersion</a>
</li>
<li>Size()
: <a class="el" href="classignite_1_1cache_1_1Cache.html#ae2a4bc2ff23bb72bd6338d3003c8d9f7">ignite::cache::Cache&lt; K, V &gt;</a>
</li>
<li>springCfgPath
: <a class="el" href="structignite_1_1IgniteConfiguration.html#afd23553f3a6f646741552e3d5e9d8283">ignite::IgniteConfiguration</a>
</li>
<li>SqlFieldsQuery()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#aba1e988e00b3cacc3a0190f65801de24">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#a0f42e8fe22206d67da956f41f387b54c">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
<li>SqlQuery()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlQuery.html#afd18d1a83311dc68fe37629846849bc1">ignite::cache::query::SqlQuery</a>
</li>
<li>stage
: <a class="el" href="structignite_1_1IgniteProductVersion.html#a6efb46e77f2b80af536f31ecf92fc882">ignite::IgniteProductVersion</a>
</li>
<li>Start()
: <a class="el" href="classignite_1_1Ignition.html#ac829502ac276a8bdff91b55daeb323b5">ignite::Ignition</a>
, <a class="el" href="classignite_1_1thin_1_1IgniteClient.html#adf731f065a32d512a0caf23901bed571">ignite::thin::IgniteClient</a>
</li>
<li>Stop()
: <a class="el" href="classignite_1_1Ignition.html#a392755938ed670e94271460610a793a8">ignite::Ignition</a>
</li>
<li>StopAll()
: <a class="el" href="classignite_1_1Ignition.html#a80cdec02fcd47dd2cbcaccb3c0b4a0a2">ignite::Ignition</a>
</li>
<li>SWAP
: <a class="el" href="structignite_1_1cache_1_1CachePeekMode.html#acd2d0e89b2c2c9d391060a89585bc2b2a36ad9d80fd6d24a1353213cf770ae9eb">ignite::cache::CachePeekMode</a>
</li>
<li>Swap()
: <a class="el" href="classignite_1_1cache_1_1query_1_1SqlFieldsQuery.html#a856243c6eeba629483573fe983fcbc73">ignite::cache::query::SqlFieldsQuery</a>
, <a class="el" href="classignite_1_1cache_1_1query_1_1SqlQuery.html#a5591e0ffb6e596985bc9fc575d838c89">ignite::cache::query::SqlQuery</a>
, <a class="el" href="classignite_1_1thin_1_1cache_1_1query_1_1SqlFieldsQuery.html#aea724d84e0167032b5e7cd26f635f421">ignite::thin::cache::query::SqlFieldsQuery</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sat Sep 11 2021 21:14:00 for &nbsp; Apache Ignite C++ by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>
