Continued:
[core.git] / framework / main / interfaces / io / class_StreamableInput.php
index b3806d638369eb0dfabf0329be8cd4d4e144207a..f38f6400515f0265db5158a16dfe1e07642caa08 100644 (file)
@@ -10,7 +10,7 @@ use Org\Mxchange\CoreFramework\Stream\Streamable;
  *
  * @author             Roland Haeder <webmaster@shipsimu.org>
  * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2017 Core Developer Team
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2023 Core Developer Team
  * @license            GNU GPL 3.0 or any newer version
  * @link               http://www.shipsimu.org
  *
@@ -28,5 +28,28 @@ use Org\Mxchange\CoreFramework\Stream\Streamable;
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 interface StreamableInput extends Streamable {
+       /**
+        * Determines seek position
+        *
+        * @return      $seekPosition   Current seek position
+        */
+       function determineSeekPosition ();
+
+       /**
+        * Seek to given offset (default) or other possibilities as fseek() gives.
+        *
+        * @param       $offset         Offset to seek to (or used as "base" for other seeks)
+        * @param       $whence         Added to offset (default: only use offset to seek to)
+        * @return      void
+        * @throws      OutOfBoundsException    If the position is not seekable
+        */
+       function seek (int $offset, int $whence = SEEK_SET);
+
+       /**
+        * Size of file stack
+        *
+        * @return      $size   Size (in bytes) of file
+        */
+       function size ();
 
 }