Code archives/Miscellaneous/fmc.IOStream
This code has been declared by its author to be Public Domain code.
Download source code
| |||||
| Since 2006-11-06 my modules stored in the code archives are out of synchronization. To have the latest version you need to use the bmk/syncmods utility or the MaxIDE. You need to add "webspace100.we.funpic.de/root/mod" as a new line to "cfg/modservers.cfg" in your BlitzMax installation directory. You can't synchronize with the default BlitzMax 1.22 IDE. If you don't have another IDE, you need to download a tweaked MaxIDE. You need to specify "fmc" as additional module scope. Alternative you can synchronize with the bmk tool: bmk syncmods fmc For a better description see my thread in the programming forum introducing these modules. | |||||
Strict
Module fmc.IOStream
ModuleInfo "Version: 0.04"
ModuleInfo "Modserver: Fabian"
Import brl.stream
Import brl.event
Const EVENT_READAVAIL = $80001
Const STREAMTYPE_FILE = 1
Const STREAMTYPE_COMM = 2
Const STREAMTYPE_AVAIL = 3
Const STREAMTYPE_EVENT = 4
Function StreamType ( stream:TStream )
Select stream.Seek ( -1 )
Case 0
Return STREAMTYPE_FILE
Case -1
Return STREAMTYPE_COMM
Case -2
Return STREAMTYPE_AVAIL
Case -3
Return STREAMTYPE_EVENT
EndSelect
EndFunction
Function IOStreamPos:Long ( stream:TStream )
Local IO:TIOStream = TIOStream ( stream )
If IO
Return IO.IOPos ( )
Else
Return stream.Pos ( )
EndIf
EndFunction
Function IOStreamSize:Long ( stream:TStream )
Local IO:TIOStream = TIOStream ( stream )
If IO
Return IO.IOSize ( )
Else
Return stream.Size ( )
EndIf
EndFunction
Function IOSeekStream:Long ( stream:TStream , pos:Long )
Local IO:TIOStream = TIOStream ( stream )
If IO
Return IO.IOSeek ( pos )
Else
Return stream.Seek ( pos )
EndIf
EndFunction
Type TIOStream Extends TStream
Method Pos ( )
Return IOPos ( )
EndMethod
Method Size ( )
Return IOSize ( )
EndMethod
Method Seek ( pos )
Return IOSeek ( pos )
EndMethod
Method IOPos:Long ( )
Return -1
EndMethod
Method IOSize:Long ( )
EndMethod
Method IOSeek:Long ( pos:Long )
Return -1
EndMethod
EndType |
Comments
None.
Code Archives Forum