*** empty log message ***
[h316.git] / pc-tools / ldc2 / src / discard_block.hh
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..af9ad66b70f1d2e0ba850c33e15ad7129006de5d 100644 (file)
@@ -0,0 +1,38 @@
+#ifndef DISCARD_BLOCK_H
+#define DISCARD_BLOCK_H
+
+#include <string>
+#include <vector>
+
+#include "tape_block.hh"
+
+using namespace std;
+
+/*!
+ *\brief Class representating an invalid block.
+ *
+ *Reasons for a block to be invalid are:\n
+ * - EOF on fd used to initialise,
+ * - Checksum error in a block
+ * - IO error while reading from fd
+ * The reason for the block to be a discard_block can be
+ * resolved by using get_state().
+ */
+class discard_block
+  :public tape_block
+{
+  friend tape_block* tape_block::gen_from_fd(int,void(*)(void*),
+                                            void(*)(void*),void*);
+public: // methods
+  discard_block(discard_block &);
+  virtual vector<string> get_description();
+
+discard_block(tape_block &);
+private:   // methods
+
+  discard_block();
+
+}; // class discard_block
+
+
+#endif