<!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" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title> Class: MDArray::Counter — Documentation by YARD 0.8.7.6 </title> <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" /> <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" /> <script type="text/javascript" charset="utf-8"> hasFrames = window.top.frames.main ? true : false; relpath = '../'; framesUrl = "../frames.html#!MDArray/Counter.html"; </script> <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script> <script type="text/javascript" charset="utf-8" src="../js/app.js"></script> </head> <body> <div id="header"> <div id="menu"> <a href="../_index.html">Index (C)</a> » <span class='title'><span class='object_link'><a href="../MDArray.html" title="MDArray (class)">MDArray</a></span></span> » <span class="title">Counter</span> <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div> </div> <div id="search"> <a class="full_list_link" id="class_list_link" href="../class_list.html"> Class List </a> <a class="full_list_link" id="method_list_link" href="../method_list.html"> Method List </a> <a class="full_list_link" id="file_list_link" href="../file_list.html"> File List </a> </div> <div class="clear"></div> </div> <iframe id="search_frame"></iframe> <div id="content"><h1>Class: MDArray::Counter </h1> <dl class="box"> <dt class="r1">Inherits:</dt> <dd class="r1"> <span class="inheritName">Object</span> <ul class="fullTree"> <li>Object</li> <li class="next">MDArray::Counter</li> </ul> <a href="#" class="inheritanceTree">show all</a> </dd> <dt class="r2">Includes:</dt> <dd class="r2">Enumerable</dd> <dt class="r1 last">Defined in:</dt> <dd class="r1 last">lib/mdarray/counter.rb</dd> </dl> <div class="clear"></div> <h2>Overview</h2><div class="docstring"> <div class="discussion"> <hr> <p>Counters for Multidimensional arrays. A Counter refers to a particular element of an array. This is a generalization of index as int[].</p> <hr> </div> </div> <div class="tags"> </div> <h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2> <ul class="summary"> <li class="public "> <span class="summary_signature"> <a href="#counter-instance_method" title="#counter (instance method)">- (Object) <strong>counter</strong> </a> </span> <span class="note title readonly">readonly</span> <span class="summary_desc"><div class='inline'> <p>Returns the value of attribute counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#finish-instance_method" title="#finish (instance method)">- (Object) <strong>finish</strong> </a> </span> <span class="note title readonly">readonly</span> <span class="summary_desc"><div class='inline'> <p>Returns the value of attribute finish.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#mdarray-instance_method" title="#mdarray (instance method)">- (Object) <strong>mdarray</strong> </a> </span> <span class="note title readonly">readonly</span> <span class="summary_desc"><div class='inline'> <p>Returns the value of attribute mdarray.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#nc_index-instance_method" title="#nc_index (instance method)">- (Object) <strong>nc_index</strong> </a> </span> <span class="note title readonly">readonly</span> <span class="summary_desc"><div class='inline'> <p>Returns the value of attribute nc_index.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#shape-instance_method" title="#shape (instance method)">- (Object) <strong>shape</strong> </a> </span> <span class="note title readonly">readonly</span> <span class="summary_desc"><div class='inline'> <p>Returns the value of attribute shape.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#start-instance_method" title="#start (instance method)">- (Object) <strong>start</strong> </a> </span> <span class="note title readonly">readonly</span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------- Accessor methods for start, finish and position.</p> </div></span> </li> </ul> <h2> Instance Method Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small> </h2> <ul class="summary"> <li class="public "> <span class="summary_signature"> <a href="#%5B%5D-instance_method" title="#[] (instance method)">- (Object) <strong>[]</strong>(*counter) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Gets the element at the given counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#%5B%5D%3D-instance_method" title="#[]= (instance method)">- (Object) <strong>[]=</strong>(counter, value) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Sets the value of counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#each-instance_method" title="#each (instance method)">- (Object) <strong>each</strong> </a> </span> <span class="summary_desc"><div class='inline'> <p>-------------------------------------------------------------------------------------.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#each_along_axes-instance_method" title="#each_along_axes (instance method)">- (Object) <strong>each_along_axes</strong>(axes) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------- Walks the counter along each of the axes.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#get-instance_method" title="#get (instance method)">- (Object) <strong>get</strong>(counter) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Gets the element at the given counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#get_as-instance_method" title="#get_as (instance method)">- (Object) <strong>get_as</strong>(type, count = nil) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Gets the element at the courrent counter with the given type ------------------------------------------------------------------------------------.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#get_current-instance_method" title="#get_current (instance method)">- (Object) <strong>get_current</strong> </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Gets element at current counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#get_scalar-instance_method" title="#get_scalar (instance method)">- (Object) <strong>get_scalar</strong> </a> </span> <span class="summary_desc"><div class='inline'> <p>---------------------------------------------------------------------------------------.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#initialize-instance_method" title="#initialize (instance method)">- (Counter) <strong>initialize</strong>(mdarray) </a> </span> <span class="note title constructor">constructor</span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#jget-instance_method" title="#jget (instance method)">- (Object) <strong>jget</strong>(counter) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Gets the element at the given counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#reset_counter-instance_method" title="#reset_counter (instance method)">- (Object) <strong>reset_counter</strong> </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Reset the counter to the defined start value ------------------------------------------------------------------------------------.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#set-instance_method" title="#set (instance method)">- (Object) <strong>set</strong>(counter, value) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Sets the value of counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#set_current-instance_method" title="#set_current (instance method)">- (Object) <strong>set_current</strong>(value) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------ Sets value of current counter.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#set_finish-instance_method" title="#set_finish (instance method)">- (Object) <strong>set_finish</strong>(finish) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------- Sets the finishing position of the index -------------------------------------------------------------------------------------.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#set_scalar-instance_method" title="#set_scalar (instance method)">- (Object) <strong>set_scalar</strong>(value) </a> </span> <span class="summary_desc"><div class='inline'> <p>---------------------------------------------------------------------------------------.</p> </div></span> </li> <li class="public "> <span class="summary_signature"> <a href="#set_start-instance_method" title="#set_start (instance method)">- (Object) <strong>set_start</strong>(start) </a> </span> <span class="summary_desc"><div class='inline'> <p>------------------------------------------------------------------------------------- Sets the starting position of the index -------------------------------------------------------------------------------------.</p> </div></span> </li> </ul> <div id="constructor_details" class="method_details_list"> <h2>Constructor Details</h2> <div class="method_details first"> <h3 class="signature first" id="initialize-instance_method"> - (<tt><span class='object_link'><a href="" title="MDArray::Counter (class)">Counter</a></span></tt>) <strong>initialize</strong>(mdarray) </h3><div class="docstring"> <div class="discussion"> <hr> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 56</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_mdarray'>mdarray</span><span class='rparen'>)</span> <span class='ivar'>@mdarray</span> <span class='op'>=</span> <span class='id identifier rubyid_mdarray'>mdarray</span> <span class='ivar'>@nc_index</span> <span class='op'>=</span> <span class='id identifier rubyid_mdarray'>mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getIndex'>getIndex</span><span class='lparen'>(</span><span class='rparen'>)</span> <span class='ivar'>@shape</span> <span class='op'>=</span> <span class='ivar'>@nc_index</span><span class='period'>.</span><span class='id identifier rubyid_getShape'>getShape</span><span class='lparen'>(</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span> <span class='comment'># by default the starting index is the [0] index (first element) </span> <span class='id identifier rubyid_shape'>shape</span> <span class='op'>=</span> <span class='ivar'>@shape</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span> <span class='id identifier rubyid_set_start'>set_start</span><span class='lparen'>(</span><span class='id identifier rubyid_shape'>shape</span><span class='period'>.</span><span class='id identifier rubyid_fill'>fill</span><span class='lparen'>(</span><span class='int'>0</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='comment'># by default the finish index is the last element of the array </span> <span class='id identifier rubyid_finish'>finish</span> <span class='op'>=</span> <span class='const'>Array</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='ivar'>@shape</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_val'>val</span><span class='op'>|</span> <span class='id identifier rubyid_finish'>finish</span> <span class='op'><<</span> <span class='id identifier rubyid_val'>val</span> <span class='op'>-</span> <span class='int'>1</span> <span class='kw'>end</span> <span class='id identifier rubyid_set_finish'>set_finish</span><span class='lparen'>(</span><span class='id identifier rubyid_finish'>finish</span><span class='rparen'>)</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> </div> <div id="instance_attr_details" class="attr_details"> <h2>Instance Attribute Details</h2> <span id=""></span> <div class="method_details first"> <h3 class="signature first" id="counter-instance_method"> - (<tt>Object</tt>) <strong>counter</strong> <span class="extras">(readonly)</span> </h3><div class="docstring"> <div class="discussion"> <p>Returns the value of attribute counter</p> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 50 51 52</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 50</span> <span class='kw'>def</span> <span class='id identifier rubyid_counter'>counter</span> <span class='ivar'>@counter</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <span id=""></span> <div class="method_details "> <h3 class="signature " id="finish-instance_method"> - (<tt>Object</tt>) <strong>finish</strong> <span class="extras">(readonly)</span> </h3><div class="docstring"> <div class="discussion"> <p>Returns the value of attribute finish</p> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 49 50 51</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 49</span> <span class='kw'>def</span> <span class='id identifier rubyid_finish'>finish</span> <span class='ivar'>@finish</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <span id=""></span> <div class="method_details "> <h3 class="signature " id="mdarray-instance_method"> - (<tt>Object</tt>) <strong>mdarray</strong> <span class="extras">(readonly)</span> </h3><div class="docstring"> <div class="discussion"> <p>Returns the value of attribute mdarray</p> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 45 46 47</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 45</span> <span class='kw'>def</span> <span class='id identifier rubyid_mdarray'>mdarray</span> <span class='ivar'>@mdarray</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <span id=""></span> <div class="method_details "> <h3 class="signature " id="nc_index-instance_method"> - (<tt>Object</tt>) <strong>nc_index</strong> <span class="extras">(readonly)</span> </h3><div class="docstring"> <div class="discussion"> <p>Returns the value of attribute nc_index</p> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 46 47 48</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 46</span> <span class='kw'>def</span> <span class='id identifier rubyid_nc_index'>nc_index</span> <span class='ivar'>@nc_index</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <span id=""></span> <div class="method_details "> <h3 class="signature " id="shape-instance_method"> - (<tt>Object</tt>) <strong>shape</strong> <span class="extras">(readonly)</span> </h3><div class="docstring"> <div class="discussion"> <p>Returns the value of attribute shape</p> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 47 48 49</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 47</span> <span class='kw'>def</span> <span class='id identifier rubyid_shape'>shape</span> <span class='ivar'>@shape</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <span id=""></span> <div class="method_details "> <h3 class="signature " id="start-instance_method"> - (<tt>Object</tt>) <strong>start</strong> <span class="extras">(readonly)</span> </h3><div class="docstring"> <div class="discussion"> <hr> <p>Accessor methods for start, finish and position.</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 110 111 112</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 110</span> <span class='kw'>def</span> <span class='id identifier rubyid_start'>start</span> <span class='ivar'>@start</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> </div> <div id="instance_method_details" class="method_details_list"> <h2>Instance Method Details</h2> <div class="method_details first"> <h3 class="signature first" id="[]-instance_method"> - (<tt>Object</tt>) <strong>[]</strong>(*counter) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Gets the element at the given counter. If counter is not basic, try to fix it to its basic form.</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 166 167 168 169</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 166</span> <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_counter'>set_counter</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_get_at_counter'>get_at_counter</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="[]=-instance_method"> - (<tt>Object</tt>) <strong>[]=</strong>(counter, value) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Sets the value of counter. If counter is not basic, try to fix it to its basic form.</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 251 252 253 254</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 251</span> <span class='kw'>def</span> <span class='op'>[]=</span> <span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_counter'>set_counter</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_at_counter'>set_at_counter</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="each-instance_method"> - (<tt>Object</tt>) <strong>each</strong> </h3><div class="docstring"> <div class="discussion"> <hr> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 134 135 136 137 138 139 140 141</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 134</span> <span class='kw'>def</span> <span class='id identifier rubyid_each'>each</span> <span class='id identifier rubyid_reset_counter'>reset_counter</span> <span class='kw'>begin</span> <span class='kw'>yield</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_counter'>counter</span> <span class='kw'>if</span> <span class='id identifier rubyid_block_given?'>block_given?</span> <span class='kw'>end</span> <span class='kw'>while</span><span class='lparen'>(</span><span class='id identifier rubyid_get_next_counter'>get_next_counter</span><span class='rparen'>)</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="each_along_axes-instance_method"> - (<tt>Object</tt>) <strong>each_along_axes</strong>(axes) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Walks the counter along each of the axes. For instance if given axes [0, 2] and the array shape is [4, 3, 2], then the counter will be [0, 0, 0], [0, 0, 1],</p> <dl class="rdoc-list label-list"><dt>1, 0, 1], [1, 0, 1], [2, 0, 0], ... [3, 0, 1 <dd><hr> </dd></dl> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 149 150 151 152 153 154 155 156 157 158 159</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 149</span> <span class='kw'>def</span> <span class='id identifier rubyid_each_along_axes'>each_along_axes</span><span class='lparen'>(</span><span class='id identifier rubyid_axes'>axes</span><span class='rparen'>)</span> <span class='id identifier rubyid_reset_counter'>reset_counter</span> <span class='ivar'>@axes</span> <span class='op'>=</span> <span class='id identifier rubyid_axes'>axes</span> <span class='id identifier rubyid_axis'>axis</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='int'>0</span><span class='comma'>,</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_counter'>counter</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>-</span> <span class='int'>2</span><span class='rbracket'>]</span> <span class='kw'>begin</span> <span class='kw'>yield</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_counter'>counter</span><span class='comma'>,</span> <span class='id identifier rubyid_axis'>axis</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='kw'>if</span> <span class='id identifier rubyid_block_given?'>block_given?</span> <span class='kw'>end</span> <span class='kw'>while</span> <span class='lparen'>(</span><span class='id identifier rubyid_axis'>axis</span> <span class='op'>=</span> <span class='id identifier rubyid_walk_along_axes'>walk_along_axes</span><span class='rparen'>)</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="get-instance_method"> - (<tt>Object</tt>) <strong>get</strong>(counter) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Gets the element at the given counter. Assumes that the counter is of the proper shape.</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 176 177 178 179</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 176</span> <span class='kw'>def</span> <span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_counter_fast'>set_counter_fast</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_get_at_counter'>get_at_counter</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="get_as-instance_method"> - (<tt>Object</tt>) <strong>get_as</strong>(type, count = nil) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Gets the element at the courrent counter with the given type</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 185</span> <span class='kw'>def</span> <span class='id identifier rubyid_get_as'>get_as</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_count'>count</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span> <span class='id identifier rubyid_count'>count</span> <span class='op'>?</span> <span class='id identifier rubyid_set_counter_fast'>set_counter_fast</span><span class='lparen'>(</span><span class='id identifier rubyid_count'>count</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_set_counter_fast'>set_counter_fast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='kw'>begin</span> <span class='kw'>case</span> <span class='id identifier rubyid_type'>type</span> <span class='kw'>when</span> <span class='symbol'>:boolean</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getBoolean'>getBoolean</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:byte</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getByte'>getByte</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:char</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getChar'>getChar</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:short</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getShort'>getShort</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:int</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getInt'>getInt</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:long</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getLong'>getLong</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:float</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getFloat'>getFloat</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:double</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getDouble'>getDouble</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>when</span> <span class='symbol'>:string</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getObject'>getObject</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='kw'>else</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_getObject'>getObject</span><span class='lparen'>(</span><span class='ivar'>@nc_index</span><span class='rparen'>)</span> <span class='kw'>end</span> <span class='kw'>rescue</span> <span class='const'>Java</span><span class='op'>::</span><span class='const'>UcarMa2</span><span class='op'>::</span><span class='const'>ForbiddenConversionException</span> <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>cannot convert to type </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_type'>type</span><span class='rbrace'>}</span><span class='tstring_end'>"</span></span> <span class='kw'>end</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="get_current-instance_method"> - (<tt>Object</tt>) <strong>get_current</strong> </h3><div class="docstring"> <div class="discussion"> <hr> <p>Gets element at current counter. Can be done fast, as counter is always of the proper shape.</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 241 242 243 244</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 241</span> <span class='kw'>def</span> <span class='id identifier rubyid_get_current'>get_current</span> <span class='id identifier rubyid_set_counter_fast'>set_counter_fast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_get_at_counter'>get_at_counter</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="get_scalar-instance_method"> - (<tt>Object</tt>) <strong>get_scalar</strong> </h3><div class="docstring"> <div class="discussion"> <hr> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 222 223 224</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 222</span> <span class='kw'>def</span> <span class='id identifier rubyid_get_scalar'>get_scalar</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_get'>get</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="jget-instance_method"> - (<tt>Object</tt>) <strong>jget</strong>(counter) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Gets the element at the given counter. Assumes that the counter is of the proper shape. Also, counter should be an int java array</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 231 232 233 234</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 231</span> <span class='kw'>def</span> <span class='id identifier rubyid_jget'>jget</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_jset_counter_fast'>jset_counter_fast</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_get_at_counter'>get_at_counter</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="reset_counter-instance_method"> - (<tt>Object</tt>) <strong>reset_counter</strong> </h3><div class="docstring"> <div class="discussion"> <hr> <p>Reset the counter to the defined start value</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 126 127 128</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 126</span> <span class='kw'>def</span> <span class='id identifier rubyid_reset_counter'>reset_counter</span> <span class='ivar'>@counter</span> <span class='op'>=</span> <span class='ivar'>@start</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="set-instance_method"> - (<tt>Object</tt>) <strong>set</strong>(counter, value) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Sets the value of counter. Assume that counter is on its basic form.</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 260 261 262 263</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 260</span> <span class='kw'>def</span> <span class='id identifier rubyid_set'>set</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_counter_fast'>set_counter_fast</span><span class='lparen'>(</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_at_counter'>set_at_counter</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="set_current-instance_method"> - (<tt>Object</tt>) <strong>set_current</strong>(value) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Sets value of current counter. Can be done fast, as the current counter is always in its basic shape.</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 278 279 280 281</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 278</span> <span class='kw'>def</span> <span class='id identifier rubyid_set_current'>set_current</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_counter_fast'>set_counter_fast</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_counter'>counter</span><span class='rparen'>)</span> <span class='id identifier rubyid_set_at_counter'>set_at_counter</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="set_finish-instance_method"> - (<tt>Object</tt>) <strong>set_finish</strong>(finish) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Sets the finishing position of the index</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 95 96 97 98 99 100 101 102 103 104</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 95</span> <span class='kw'>def</span> <span class='id identifier rubyid_set_finish'>set_finish</span><span class='lparen'>(</span><span class='id identifier rubyid_finish'>finish</span><span class='rparen'>)</span> <span class='id identifier rubyid_finish'>finish</span> <span class='op'>=</span> <span class='id identifier rubyid_reshape'>reshape</span><span class='lparen'>(</span><span class='id identifier rubyid_finish'>finish</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='lparen'>(</span><span class='id identifier rubyid_finish'>finish</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Cannot set index finish position to an array section</span><span class='tstring_end'>"</span></span> <span class='kw'>else</span> <span class='ivar'>@finish</span> <span class='op'>=</span> <span class='id identifier rubyid_finish'>finish</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_reverse'>reverse</span> <span class='kw'>end</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="set_scalar-instance_method"> - (<tt>Object</tt>) <strong>set_scalar</strong>(value) </h3><div class="docstring"> <div class="discussion"> <hr> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 269 270 271</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 269</span> <span class='kw'>def</span> <span class='id identifier rubyid_set_scalar'>set_scalar</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='ivar'>@mdarray</span><span class='period'>.</span><span class='id identifier rubyid_nc_array'>nc_array</span><span class='period'>.</span><span class='id identifier rubyid_set'>set</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> <div class="method_details "> <h3 class="signature " id="set_start-instance_method"> - (<tt>Object</tt>) <strong>set_start</strong>(start) </h3><div class="docstring"> <div class="discussion"> <hr> <p>Sets the starting position of the index</p> <hr> </div> </div> <div class="tags"> </div><table class="source_code"> <tr> <td> <pre class="lines"> 79 80 81 82 83 84 85 86 87 88 89</pre> </td> <td> <pre class="code"><span class="info file"># File 'lib/mdarray/counter.rb', line 79</span> <span class='kw'>def</span> <span class='id identifier rubyid_set_start'>set_start</span><span class='lparen'>(</span><span class='id identifier rubyid_start'>start</span><span class='rparen'>)</span> <span class='id identifier rubyid_start'>start</span> <span class='op'>=</span> <span class='id identifier rubyid_reshape'>reshape</span><span class='lparen'>(</span><span class='id identifier rubyid_start'>start</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='lparen'>(</span><span class='id identifier rubyid_start'>start</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Cannot set index starting position to an array section</span><span class='tstring_end'>"</span></span> <span class='kw'>else</span> <span class='ivar'>@start</span> <span class='op'>=</span> <span class='id identifier rubyid_start'>start</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_reverse'>reverse</span> <span class='id identifier rubyid_reset_counter'>reset_counter</span> <span class='kw'>end</span> <span class='kw'>end</span></pre> </td> </tr> </table> </div> </div> </div> <div id="footer"> Generated on Tue Jul 14 18:08:59 2015 by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a> 0.8.7.6 (ruby-1.9.3). </div> </body> </html>