<!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>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.7.0/dotnetdoc/functions_func_t.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.9.1"/>
<title>Apache Ignite.NET: Class Members - Functions</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</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 style="padding-left: 0.5em;">
   <div id="projectname">Apache Ignite.NET
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('functions_func_t.html','');});
</script>
<div id="doc-content">
<div class="contents">
&#160;

<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
<li>TcpCommunicationSpi()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_communication_1_1_tcp_1_1_tcp_communication_spi.html#a5e3913db47190e0c0ddb85a56b7313ed">Apache.Ignite.Core.Communication.Tcp.TcpCommunicationSpi</a>
</li>
<li>TcpDiscoveryMulticastIpFinder()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_discovery_1_1_tcp_1_1_multicast_1_1_tcp_discovery_multicast_ip_finder.html#ab9b7670594bdccf3355a9bccb8e7ec21">Apache.Ignite.Core.Discovery.Tcp.Multicast.TcpDiscoveryMulticastIpFinder</a>
</li>
<li>TcpDiscoverySpi()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_discovery_1_1_tcp_1_1_tcp_discovery_spi.html#a744fb66f2ba9f4e9d58ae61bdc39247d">Apache.Ignite.Core.Discovery.Tcp.TcpDiscoverySpi</a>
</li>
<li>TcpDiscoveryStaticIpFinder()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_discovery_1_1_tcp_1_1_static_1_1_tcp_discovery_static_ip_finder.html#a0fb1d92716d8730d1ab13b2af68dc0b0">Apache.Ignite.Core.Discovery.Tcp.Static.TcpDiscoveryStaticIpFinder</a>
</li>
<li>TextQuery()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_cache_1_1_query_1_1_text_query.html#ac41e90e7559a9bebb67350ffb85e6ed9">Apache.Ignite.Core.Cache.Query.TextQuery</a>
</li>
<li>ToBinary&lt; T &gt;()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary.html#a2cf7eb9a1f6ea233aff10804f1c1c46f">Apache.Ignite.Core.Binary.IBinary</a>
</li>
<li>ToBuilder()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_binary_1_1_i_binary_object.html#a6af9cb4fa0859a357818b696d2226dee">Apache.Ignite.Core.Binary.IBinaryObject</a>
</li>
<li>ToCacheEntryEventFilter&lt; TK, TV &gt;()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_cache_1_1_query_1_1_continuous_1_1_continuous_query_extensions.html#aecd02405af0bbb350c8910c2bbab80e9">Apache.Ignite.Core.Cache.Query.Continuous.ContinuousQueryExtensions</a>
</li>
<li>ToShortString()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_cache_event.html#addf49031692419d76944e8a27753d21c">Apache.Ignite.Core.Events.CacheEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_cache_query_executed_event.html#a9ee466a4b8046b1f6390eef9b3c577bd">Apache.Ignite.Core.Events.CacheQueryExecutedEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_cache_query_read_event.html#a906932d37a728d51b13bf1dab00e7c96">Apache.Ignite.Core.Events.CacheQueryReadEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_cache_rebalancing_event.html#a9d650e8a7fef1297d62593dad8bdb8a6">Apache.Ignite.Core.Events.CacheRebalancingEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_checkpoint_event.html#ad7a015079957dd4581c053766d55945c">Apache.Ignite.Core.Events.CheckpointEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_discovery_event.html#af92dd318f42524278bafe69a331a730c">Apache.Ignite.Core.Events.DiscoveryEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_base.html#a9852ded15689b42174eebb7af253cdca">Apache.Ignite.Core.Events.EventBase</a>
, <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_events_1_1_i_event.html#ac52e660a3a9403a5cf54753ca2c4bfcc">Apache.Ignite.Core.Events.IEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_job_event.html#adb70c2368a13b60208c467d1979f534c">Apache.Ignite.Core.Events.JobEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_swap_space_event.html#a7399d72481ffa9f800af2b6bbbb6f8ab">Apache.Ignite.Core.Events.SwapSpaceEvent</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_task_event.html#a2025ae83caf7b2bac034e3cd9d2aad80">Apache.Ignite.Core.Events.TaskEvent</a>
</li>
<li>ToString()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_binary_1_1_binary_type_configuration.html#af537efb7962e8a985916fc7116477e32">Apache.Ignite.Core.Binary.BinaryTypeConfiguration</a>
, <a class="el" href="struct_apache_1_1_ignite_1_1_core_1_1_cache_1_1_affinity_1_1_affinity_topology_version.html#a39e84fd83ff00be4fbba4ff153543eae">Apache.Ignite.Core.Cache.Affinity.AffinityTopologyVersion</a>
, <a class="el" href="struct_apache_1_1_ignite_1_1_core_1_1_common_1_1_ignite_guid.html#a636628f243c0aa30cc04ee116aa15723">Apache.Ignite.Core.Common.IgniteGuid</a>
, <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_events_1_1_event_base.html#a846e9bff6cc9a9d67b5d54dd140b5804">Apache.Ignite.Core.Events.EventBase</a>
</li>
<li>TransactionConfiguration()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_transaction_configuration.html#a846742b30daa1279cc63128b2a464b4b">Apache.Ignite.Core.Transactions.TransactionConfiguration</a>
</li>
<li>TransactionHeuristicException()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_transaction_heuristic_exception.html#a6d4fdea5f5a8f1c9d1fb3e491b0dc4c2">Apache.Ignite.Core.Transactions.TransactionHeuristicException</a>
</li>
<li>TransactionOptimisticException()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_transaction_optimistic_exception.html#abe6ebb60b26a9565371ebafd02f554f6">Apache.Ignite.Core.Transactions.TransactionOptimisticException</a>
</li>
<li>TransactionRollbackException()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_transaction_rollback_exception.html#a4a104e129ea256a4d2baad8b11f3d3bb">Apache.Ignite.Core.Transactions.TransactionRollbackException</a>
</li>
<li>TransactionTimeoutException()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_transaction_timeout_exception.html#ab8de5a743ce2e95a7d5703d83b35df5f">Apache.Ignite.Core.Transactions.TransactionTimeoutException</a>
</li>
<li>TryEnter()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_lock.html#aaece4ae9f562046d003c59ea39e559bb">Apache.Ignite.Core.Cache.ICacheLock</a>
</li>
<li>TryFlush()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_datastream_1_1_i_data_streamer.html#a233917f2c012376ee63437efa312586c">Apache.Ignite.Core.Datastream.IDataStreamer&lt; TK, TV &gt;</a>
</li>
<li>TryGet()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache.html#a1ae0d7708172eecba318fe89a47f0c47">Apache.Ignite.Core.Cache.ICache&lt; TK, TV &gt;</a>
</li>
<li>TryGetAsync()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache.html#a21a5129e814bad9d445bf7cc5e294dae">Apache.Ignite.Core.Cache.ICache&lt; TK, TV &gt;</a>
</li>
<li>TryGetAttribute&lt; T &gt;()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html#a2076153e0bafe7fa18c1aaa2399ef96d">Apache.Ignite.Core.Cluster.IClusterNode</a>
</li>
<li>TryGetIgnite()
: <a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignition.html#ad13e6ba75a688eba802a916c439848a1">Apache.Ignite.Core.Ignition</a>
</li>
<li>TryLocalPeek()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache.html#ab95cf2f79f8c937c75433a8fb9a51dab">Apache.Ignite.Core.Cache.ICache&lt; TK, TV &gt;</a>
</li>
<li>TxStart()
: <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transactions.html#ae0214967efbe9c7c49a8c47c5b9effe3">Apache.Ignite.Core.Transactions.ITransactions</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Mon Aug 1 2016 19:40:28 for Apache Ignite.NET by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
  </ul>
</div>
</body>
</html>
