]> git.mxchange.org Git - hub.git/blobdiff - application/hub/main/cruncher/class_BaseHubCruncher.php
Made two (generic/'base') classes abstract because calls are done from the generic...
[hub.git] / application / hub / main / cruncher / class_BaseHubCruncher.php
index 5e09d9e385d4ceccd9d1c674651a778b4f827288..cbaa0e3ad861cf9da09991d6132a1a24ce960d51 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
-class BaseHubCruncher extends BaseHubSystem implements Updateable {
+abstract class BaseHubCruncher extends BaseHubSystem implements Updateable {
        /**
         * Version information
         */
@@ -81,6 +81,27 @@ class BaseHubCruncher extends BaseHubSystem implements Updateable {
                return $isFilled;
        }
 
+       /**
+        * This method fills the in-buffer with (a) test unit(s) which are mainly
+        * used for development of the crunching part. They must be enabled in
+        * configuration, or else your cruncher runs out of WUs and waits for more
+        * to show up.
+        *
+        * In this method we already know that the in-buffer is going depleted so
+        * we don't need to double-check it here.
+        *
+        * @return      void
+        */
+       abstract protected function fillInBufferQueueWithTestUnits ();
+
+       /**
+        * This method fills the in-buffer with (real) WUs which will be crunched
+        * and the result be sent back to the key producer instance.
+        *
+        * @return      void
+        */
+       abstract protected function fillInBufferQueueWithWorkUnits ();
+
        /**
         * Enables/disables the cruncher (just sets a flag)
         *