<!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 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.11"/>
<title>Kudu C++ client API: File 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>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</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="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Kudu C++ client API
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li class="current"><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="navrow3" class="tabs2">
    <ul class="tablist">
      <li><a href="globals.html"><span>All</span></a></li>
      <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
    </ul>
  </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">
&#160;<ul>
<li>KUDU_CHECK_OK
: <a class="el" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">status.h</a>
</li>
<li>KUDU_CHECK_OK_PREPEND
: <a class="el" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">status.h</a>
</li>
<li>KUDU_DCHECK_OK
: <a class="el" href="status_8h.html#a99332afa18f00de3c7fcf3e76949df9d">status.h</a>
</li>
<li>KUDU_DCHECK_OK_PREPEND
: <a class="el" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">status.h</a>
</li>
<li>KUDU_LOG_AND_RETURN
: <a class="el" href="status_8h.html#abbd85cc2c5535627091bb06a21918150">status.h</a>
</li>
<li>KUDU_RETURN_MAIN_NOT_OK
: <a class="el" href="status_8h.html#abd6e72ed025e6e0afddf4e19ca10cdba">status.h</a>
</li>
<li>KUDU_RETURN_NOT_OK
: <a class="el" href="status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab">status.h</a>
</li>
<li>KUDU_RETURN_NOT_OK_EVAL
: <a class="el" href="status_8h.html#a8fd1f0d6a9b2457c18e218d3540c4b3e">status.h</a>
</li>
<li>KUDU_RETURN_NOT_OK_LOG
: <a class="el" href="status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce">status.h</a>
</li>
<li>KUDU_RETURN_NOT_OK_PREPEND
: <a class="el" href="status_8h.html#af66b8458f1d3f1264c1da86744e29e46">status.h</a>
</li>
<li>KUDU_RETURN_NOT_OK_RET
: <a class="el" href="status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223">status.h</a>
</li>
<li>KUDU_WARN_NOT_OK
: <a class="el" href="status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e">status.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
  <small>Generated for Kudu version 1.12.0 on Mon May 18 2020 14:07:16 by Doxygen 1.8.11</small>
  <br>
  <small>Copyright © 2020 The Apache Software Foundation.</small>
</address>
</body>
</html>
