Willkommen bei WordPress. Dies ist dein erster Beitrag. Bearbeite oder lösche ihn und beginne mit dem Schreiben!
Hallo Welt!
von raredesign | Dez 3, 2019 | Allgemein | 0 Kommentare
Cokiee Shell
Current Path : /proc/self/root/usr/share/doc/libclam-doc/html/ |
Current File : //proc/self/root/usr/share/doc/libclam-doc/html/OutControlBase_8hxx_source.html |
<!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"/> <title>CLAM-Development: OutControlBase.hxx Source File</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">CLAM-Development  <span id="projectnumber">1.4.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</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> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_f9797cc7523fcb3a2eda2d4764c4b6be.html">Flow</a></li><li class="navelem"><a class="el" href="dir_97cd3e1334cac86f7bfd8dbc310bcb62.html">Controls</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">OutControlBase.hxx</div> </div> </div><!--header--> <div class="contents"> <a href="OutControlBase_8hxx.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="preprocessor">#ifndef BaseOutControl_hxx</span></div> <div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor"></span><span class="preprocessor">#define BaseOutControl_hxx</span></div> <div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="preprocessor">#include <string></span></div> <div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="preprocessor">#include <list></span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="preprocessor">#include <typeinfo></span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="preprocessor">#include <CLAM/Assert.hxx></span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="preprocessor">#include <CLAM/InControlBase.hxx></span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> </div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> </div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="keyword">namespace </span>CLAM {</div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span>  <span class="keyword">class </span>Processing;</div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span>  <span class="keyword">class </span>InControlBase;</div> <div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html"> 20</a></span>  <span class="keyword">class </span><a class="code" href="classCLAM_1_1OutControlBase.html" title="Base class for an outwards control connector.">OutControlBase</a></div> <div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  {</div> <div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  std::string mName;</div> <div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  <a class="code" href="classCLAM_1_1Processing.html" title="The base class for all the CLAM processing object classes.">Processing</a> * mProcessing;</div> <div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  <span class="keyword">protected</span>:</div> <div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#a28c3979d8be2fffd6bc0abdcd3129ca6"> 25</a></span>  <span class="keyword">typedef</span> std::list<InControlBase*> <a class="code" href="classCLAM_1_1OutControlBase.html#a28c3979d8be2fffd6bc0abdcd3129ca6">Peers</a>;</div> <div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#aad014f9306f4c85a38955ffbdbae5ee7"> 27</a></span>  <a class="code" href="classCLAM_1_1OutControlBase.html#a28c3979d8be2fffd6bc0abdcd3129ca6">Peers</a> <a class="code" href="classCLAM_1_1OutControlBase.html#aad014f9306f4c85a38955ffbdbae5ee7" title="Stores the pointers to the connected incontrols.">mLinks</a>;</div> <div class="line"><a name="l00029"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#aac96c80b45f9e3f9b2c72e935ff622cc"> 29</a></span>  <a class="code" href="classCLAM_1_1OutControlBase.html#aac96c80b45f9e3f9b2c72e935ff622cc" title="Private copy constructor to avoid copies.">OutControlBase</a>(<span class="keyword">const</span> <a class="code" href="classCLAM_1_1OutControlBase.html" title="Base class for an outwards control connector.">OutControlBase</a> & toBeCopied ) {}</div> <div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <span class="keyword">public</span>:</div> <div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <a class="code" href="classCLAM_1_1OutControlBase.html#aac96c80b45f9e3f9b2c72e935ff622cc" title="Private copy constructor to avoid copies.">OutControlBase</a>(<span class="keyword">const</span> std::string &name, <a class="code" href="classCLAM_1_1Processing.html" title="The base class for all the CLAM processing object classes.">Processing</a> * proc = 0);</div> <div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <span class="keyword">virtual</span> <a class="code" href="classCLAM_1_1OutControlBase.html#a73975793a97433ed3e7b6b1a91bb3a45" title="Class destructor.">~OutControlBase</a>();</div> <div class="line"><a name="l00044"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#ad621f475e2dd4a23cf5128ccc13f419d"> 44</a></span>  <span class="keyword">const</span> std::string& <a class="code" href="classCLAM_1_1OutControlBase.html#ad621f475e2dd4a23cf5128ccc13f419d">GetName</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mName; }</div> <div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#ab6be9eb582d658bc32578753cc5e9ed3"> 46</a></span>  <a class="code" href="classCLAM_1_1Processing.html" title="The base class for all the CLAM processing object classes.">Processing</a> * <a class="code" href="classCLAM_1_1OutControlBase.html#ab6be9eb582d658bc32578753cc5e9ed3">GetProcessing</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mProcessing; }</div> <div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#acded52a76c83272ab87cc1325d264487"> 48</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classCLAM_1_1OutControlBase.html#acded52a76c83272ab87cc1325d264487">IsConnected</a>() { <span class="keywordflow">return</span> not <a class="code" href="classCLAM_1_1OutControlBase.html#aad014f9306f4c85a38955ffbdbae5ee7" title="Stores the pointers to the connected incontrols.">mLinks</a>.empty(); }</div> <div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#a7002a5f6d7769070667761463625b9a6"> 50</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classCLAM_1_1OutControlBase.html#a7002a5f6d7769070667761463625b9a6">IsConnectedTo</a>(<a class="code" href="classCLAM_1_1InControlBase.html" title="Base class for an inwards control connector.">InControlBase</a>& in)</div> <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  {</div> <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  Peers::iterator it;</div> <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordflow">for</span> (it=<a class="code" href="classCLAM_1_1OutControlBase.html#aad014f9306f4c85a38955ffbdbae5ee7" title="Stores the pointers to the connected incontrols.">mLinks</a>.begin(); it!=<a class="code" href="classCLAM_1_1OutControlBase.html#aad014f9306f4c85a38955ffbdbae5ee7" title="Stores the pointers to the connected incontrols.">mLinks</a>.end(); it++) </div> <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordflow">if</span> ((*it) == &in) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  }</div> <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> std::type_info& <a class="code" href="classCLAM_1_1OutControlBase.html#ac819765db11fdc29027f67ee474672e0">GetTypeId</a>() <span class="keyword">const</span> = 0;</div> <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classCLAM_1_1OutControlBase.html#a60c0936d428949dc636b6754997c043e" title="Returns whether the control can be connected to the provided in control.">IsLinkable</a>(<span class="keyword">const</span> <a class="code" href="classCLAM_1_1InControlBase.html" title="Base class for an inwards control connector.">InControlBase</a>& in) = 0;</div> <div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#adf895037e454817032ea53a668597bf5"> 69</a></span>  <span class="keywordtype">void</span> <a class="code" href="classCLAM_1_1OutControlBase.html#adf895037e454817032ea53a668597bf5" title="Set a connection with an in control.">AddLink</a>(<a class="code" href="classCLAM_1_1InControlBase.html" title="Base class for an inwards control connector.">InControlBase</a>& in)</div> <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  {</div> <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <a class="code" href="Assert_8hxx.html#a0013fa617be6fec21a9ad7180e7d8cff" title="An assertion is a check on an expression that must be true given that all the contracts are fullfille...">CLAM_ASSERT</a>(<a class="code" href="classCLAM_1_1OutControlBase.html#a60c0936d428949dc636b6754997c043e" title="Returns whether the control can be connected to the provided in control.">IsLinkable</a>(in),</div> <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="stringliteral">"Connecting controls which are not linkable (different types?). "</span></div> <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="stringliteral">"You can use IsLinkable before connecting to ensure that they are compatible."</span>);</div> <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="code" href="classCLAM_1_1OutControlBase.html#aad014f9306f4c85a38955ffbdbae5ee7" title="Stores the pointers to the connected incontrols.">mLinks</a>.push_back(&in);</div> <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  in.<a class="code" href="classCLAM_1_1InControlBase.html#afc0f0d3b5b528a949f05e396ed49e0c1" title="Implementation detail just to be used just from OutControlBase.">OutControlInterface_AddLink</a>(*<span class="keyword">this</span>);</div> <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  }</div> <div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="classCLAM_1_1OutControlBase.html#a01053a2e4e1fa96733e21ada58cca0b5"> 81</a></span>  <span class="keywordtype">void</span> <a class="code" href="classCLAM_1_1OutControlBase.html#a01053a2e4e1fa96733e21ada58cca0b5" title="Unsets an existing link with the provided in control.">RemoveLink</a>(<a class="code" href="classCLAM_1_1InControlBase.html" title="Base class for an inwards control connector.">InControlBase</a>& in)</div> <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  {</div> <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <a class="code" href="Assert_8hxx.html#a0013fa617be6fec21a9ad7180e7d8cff" title="An assertion is a check on an expression that must be true given that all the contracts are fullfille...">CLAM_ASSERT</a>(<a class="code" href="classCLAM_1_1OutControlBase.html#a7002a5f6d7769070667761463625b9a6">IsConnectedTo</a>(in),</div> <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="stringliteral">"Removing a control connection that doesn't exist."</span></div> <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="stringliteral">"You can check that with IsConnectedTo to ensure that this condition is meet."</span>);</div> <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <a class="code" href="classCLAM_1_1OutControlBase.html#aad014f9306f4c85a38955ffbdbae5ee7" title="Stores the pointers to the connected incontrols.">mLinks</a>.remove( &in );</div> <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  in.<a class="code" href="classCLAM_1_1InControlBase.html#a2403b4d7cba4a7a6136195732b4ad02c" title="Implementation detail just to be used just from OutControlBase.">OutControlInterface_RemoveLink</a>(*<span class="keyword">this</span>);</div> <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  }</div> <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  Peers::iterator <a class="code" href="classCLAM_1_1OutControlBase.html#ad048fefaee5fdb12ad3481efbd6be57f">BeginInControlsConnected</a>();</div> <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  Peers::iterator <a class="code" href="classCLAM_1_1OutControlBase.html#a128bf34981a2943ef3ee5626e007f388">EndInControlsConnected</a>();</div> <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  };</div> <div class="line"><a name="l00092"></a><span class="lineno"> 92</span> } <span class="comment">// END NAMESPACE CLAM</span></div> <div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor">#endif // BaseOutControl_hxx</span></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.1 </small></address> </body> </html>
Cokiee Shell Web 1.0, Coded By Razor
Neueste Kommentare