Acme-FishFarm
view release on metacpan or search on metacpan
docs/Acme-FishFarm-Feeder-1.01.html view on Meta::CPAN
<ul id="index">
<li><a href="#NAME">NAME</a></li>
<li><a href="#VERSION">VERSION</a></li>
<li><a href="#SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#EXPORT">EXPORT</a></li>
<li><a href="#CREATION-RELATED-METHODS">CREATION RELATED METHODS</a>
<ul>
<li><a href="#install-options">install ( %options )</a></li>
</ul>
</li>
<li><a href="#TIMER-RELATED-SUBROUTINES-METHODS">TIMER RELATED SUBROUTINES/METHODS</a>
<ul>
<li><a href="#get_timer">get_timer</a></li>
<li><a href="#set_timer-time">set_timer ( $time )</a></li>
<li><a href="#timer_is_up">timer_is_up</a></li>
<li><a href="#time_remaining">time_remaining</a></li>
<li><a href="#tick_clock-custom_tick">tick_clock ( $custom_tick )</a></li>
</ul>
</li>
<li><a href="#FOOD-TANK-RELATED-SUBROUTINE-METHODS">FOOD TANK RELATED SUBROUTINE/METHODS</a>
<ul>
<li><a href="#food_tank_capacity">food_tank_capacity</a></li>
<li><a href="#set_food_tank_capacity-new_capacity">set_food_tank_capacity ( $new_capacity )</a></li>
<li><a href="#food_remaining">food_remaining</a></li>
</ul>
</li>
<li><a href="#FEEDING-RELATED-SUBROUTINES-METHODS">FEEDING RELATED SUBROUTINES/METHODS</a>
<ul>
<li><a href="#feed_fish-options">feed_fish ( %options )</a></li>
<li><a href="#set_feeding_volume-volume">set_feeding_volume ( $volume )</a></li>
<li><a href="#feeding_volume">feeding_volume</a></li>
<li><a href="#refill-volume">refill ( $volume )</a></li>
</ul>
</li>
<li><a href="#AUTHOR">AUTHOR</a></li>
<li><a href="#BUGS">BUGS</a></li>
<li><a href="#SUPPORT">SUPPORT</a></li>
<li><a href="#ACKNOWLEDGEMENTS">ACKNOWLEDGEMENTS</a></li>
<li><a href="#SEE-ALSO">SEE ALSO</a></li>
<li><a href="#LICENSE-AND-COPYRIGHT">LICENSE AND COPYRIGHT</a></li>
</ul>
<h1 id="NAME">NAME</h1>
<p>Acme::FishFarm::Feeder - Automated Feeder for Acme::FishFarm</p>
<h1 id="VERSION">VERSION</h1>
<p>Version 1.01</p>
<h1 id="SYNOPSIS">SYNOPSIS</h1>
<pre><code> use 5.010;
use Acme::FishFarm::Feeder;
my $feeder = Acme::FishFarm::Feeder->install( timer => 3, feeding_volume => 150 );
say "Feeder installed and switched on!";
say "";
while ( "fish are living happilly" ) {
if ( $feeder->timer_is_up ) {
say "\nTimer is up, time to feed the fish!";
say "Feeding ", $feeder->feeding_volume, " cm^3 of fish food to the fish...";
$feeder->feed_fish;
say $feeder->food_remaining, " cm^3 of fish food remaining in the tank.\n";
}
if ( $feeder->food_remaining <= 0 ) {
$feeder->refill; # default back to 500 cm^3
say "Refilled food tank back to ", $feeder->food_tank_capacity, " cm^3.\n";
}
say $feeder->time_remaining, " hours left until it's time to feed the fish.";
sleep(1);
$feeder->tick_clock;
}
say "";
say "Feeder was switched off, please remeber to feed your fish on time :)";</code></pre>
<h1 id="EXPORT">EXPORT</h1>
<p>None</p>
<h1 id="CREATION-RELATED-METHODS">CREATION RELATED METHODS</h1>
<h2 id="install-options">install ( %options )</h2>
<p>Installs an automated fish feeder.</p>
<p>The following are available for <code>%options</code>:</p>
<ul>
<li><p>timer</p>
<p>The default is <code>8</code>.</p>
<p>This is used as a threshold to identify that the time is up to feed the fish or not.</p>
<p>The clock will be set to this value for countdown.</p>
</li>
<li><p>feeding_volume</p>
<p>The default is <code>50 cm^3</code>.</p>
</li>
<li><p>food_tank_capacity</p>
<p>The maximum volume of fish food. Default is <code>500 cm^3</code>.</p>
</li>
<li><p>current_food_amount</p>
<p>The initial amount of food to be filled into the food tank. Default is max ie <code>500 cm^3</code>.</p>
</li>
</ul>
<h1 id="TIMER-RELATED-SUBROUTINES-METHODS">TIMER RELATED SUBROUTINES/METHODS</h1>
<h2 id="get_timer">get_timer</h2>
<p>Returns the timer threshold of the feeder.</p>
<h2 id="set_timer-time">set_timer ( $time )</h2>
<p>Sets the new timer threshold of the feeder.</p>
<p>Setting this timer will not affect the clock within the feeder.</p>
<h2 id="timer_is_up">timer_is_up</h2>
<p>Check if the timer is up. If timer is up, please remember to feed your fish. See <code>feed_fish</code> for more info.</p>
<h2 id="time_remaining">time_remaining</h2>
<p>Returns the time remaining to feed the fish.</p>
( run in 1.007 second using v1.01-cache-2.11-cpan-ecdf5575e8d )