<!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.5"/>
<title>Apache Mesos: mesos::modules::Module&lt; mesos::SecretGenerator &gt; Struct Template Reference</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="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 style="padding-left: 0.5em;">
   <div id="projectname">Apache Mesos
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <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="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacemesos.html">mesos</a></li><li class="navelem"><a class="el" href="namespacemesos_1_1modules.html">modules</a></li><li class="navelem"><a class="el" href="structmesos_1_1modules_1_1Module_3_01mesos_1_1SecretGenerator_01_4.html">Module< mesos::SecretGenerator ></a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structmesos_1_1modules_1_1Module_3_01mesos_1_1SecretGenerator_01_4-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">mesos::modules::Module&lt; mesos::SecretGenerator &gt; Struct Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="module_2secret__generator_8hpp_source.html">secret_generator.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for mesos::modules::Module&lt; mesos::SecretGenerator &gt;:</div>
<div class="dyncontent">
 <div class="center">
  <img src="structmesos_1_1modules_1_1Module_3_01mesos_1_1SecretGenerator_01_4.png" usemap="#mesos::modules::Module&lt; mesos::SecretGenerator &gt;_map" alt=""/>
  <map id="mesos::modules::Module&lt; mesos::SecretGenerator &gt;_map" name="mesos::modules::Module&lt; mesos::SecretGenerator &gt;_map">
<area href="structmesos_1_1modules_1_1ModuleBase.html" alt="mesos::modules::ModuleBase" shape="rect" coords="0,0,306,24"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aaea6bf809252bc4ea890808ebca47d4e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1Module_3_01mesos_1_1SecretGenerator_01_4.html#aaea6bf809252bc4ea890808ebca47d4e">Module</a> (const char *_moduleApiVersion, const char *_mesosVersion, const char *_authorName, const char *_authorEmail, const char *_description, bool(*_compatible)(), mesos::http::authentication::SecretGenerator *(*_create)(const Parameters &amp;parameters))</td></tr>
<tr class="separator:aaea6bf809252bc4ea890808ebca47d4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_structmesos_1_1modules_1_1ModuleBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structmesos_1_1modules_1_1ModuleBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="structmesos_1_1modules_1_1ModuleBase.html">mesos::modules::ModuleBase</a></td></tr>
<tr class="memitem:a6e0d636098dbb6bb0fbdaa9c6cb1b5e8 inherit pub_methods_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#a6e0d636098dbb6bb0fbdaa9c6cb1b5e8">ModuleBase</a> (const char *_moduleApiVersion, const char *_mesosVersion, const char *_kind, const char *_authorName, const char *_authorEmail, const char *_description, bool(*_compatible)())</td></tr>
<tr class="separator:a6e0d636098dbb6bb0fbdaa9c6cb1b5e8 inherit pub_methods_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a60c180dcc787561215e0e3152028f3df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmesos_1_1SecretGenerator.html">mesos::SecretGenerator</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1Module_3_01mesos_1_1SecretGenerator_01_4.html#a60c180dcc787561215e0e3152028f3df">create</a> )(const Parameters &amp;parameters)</td></tr>
<tr class="separator:a60c180dcc787561215e0e3152028f3df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structmesos_1_1modules_1_1ModuleBase')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="structmesos_1_1modules_1_1ModuleBase.html">mesos::modules::ModuleBase</a></td></tr>
<tr class="memitem:a5dd5da6efcacafd63b38c963fc0928b3 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#a5dd5da6efcacafd63b38c963fc0928b3">moduleApiVersion</a></td></tr>
<tr class="separator:a5dd5da6efcacafd63b38c963fc0928b3 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ca69335b900f0e95dca883c512df95a inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#a3ca69335b900f0e95dca883c512df95a">mesosVersion</a></td></tr>
<tr class="separator:a3ca69335b900f0e95dca883c512df95a inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af37d32c0c7e7964c8e2368f4224ce0b4 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#af37d32c0c7e7964c8e2368f4224ce0b4">kind</a></td></tr>
<tr class="separator:af37d32c0c7e7964c8e2368f4224ce0b4 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af80fc68d09b86ea3192284dc55a64a9b inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#af80fc68d09b86ea3192284dc55a64a9b">authorName</a></td></tr>
<tr class="separator:af80fc68d09b86ea3192284dc55a64a9b inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0dd78b0f361b71137577e31d979b7f5c inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#a0dd78b0f361b71137577e31d979b7f5c">authorEmail</a></td></tr>
<tr class="separator:a0dd78b0f361b71137577e31d979b7f5c inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae584668522f5c02ba58f932d238ce2c0 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#ae584668522f5c02ba58f932d238ce2c0">description</a></td></tr>
<tr class="separator:ae584668522f5c02ba58f932d238ce2c0 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a344f574a53177b987a00d2c83abc2587 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memItemLeft" align="right" valign="top">bool(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmesos_1_1modules_1_1ModuleBase.html#a344f574a53177b987a00d2c83abc2587">compatible</a> )()</td></tr>
<tr class="separator:a344f574a53177b987a00d2c83abc2587 inherit pub_attribs_structmesos_1_1modules_1_1ModuleBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aaea6bf809252bc4ea890808ebca47d4e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structmesos_1_1modules_1_1Module.html">mesos::modules::Module</a>&lt; <a class="el" href="classmesos_1_1SecretGenerator.html">mesos::SecretGenerator</a> &gt;::<a class="el" href="structmesos_1_1modules_1_1Module.html">Module</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>_moduleApiVersion</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>_mesosVersion</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>_authorName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>_authorEmail</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>_description</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool(*)()&#160;</td>
          <td class="paramname"><em>_compatible</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mesos::http::authentication::SecretGenerator *(*)(const Parameters &amp;parameters)&#160;</td>
          <td class="paramname"><em>_create</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a60c180dcc787561215e0e3152028f3df"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmesos_1_1SecretGenerator.html">mesos::SecretGenerator</a>*(* <a class="el" href="structmesos_1_1modules_1_1Module.html">mesos::modules::Module</a>&lt; <a class="el" href="classmesos_1_1SecretGenerator.html">mesos::SecretGenerator</a> &gt;::create)(const Parameters &amp;parameters)</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/mesos/module/<a class="el" href="module_2secret__generator_8hpp_source.html">secret_generator.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>
