Vega strike Python Modules doc  0.5.1
Documentation of the " Modules " folder of Vega strike
 All Data Structures Namespaces Files Functions Variables
HexBin Class Reference

Public Member Functions

def __init__
 
def read
 
def close_data
 
def read_rsrc
 
def close
 

Data Fields

 ifp
 
 crc
 
 dlen
 
 rlen
 
 FName
 
 FInfo
 
 state
 

Detailed Description

Definition at line 377 of file binhex.py.

Constructor & Destructor Documentation

def __init__ (   self,
  ifp 
)

Definition at line 378 of file binhex.py.

References aifc.open().

379  def __init__(self, ifp):
380  if type(ifp) == type(''):
381  ifp = open(ifp)
382  #
383  # Find initial colon.
384  #
385  while 1:
386  ch = ifp.read(1)
387  if not ch:
388  raise Error, "No binhex data found"
389  # Cater for \r\n terminated lines (which show up as \n\r, hence
390  # all lines start with \r)
391  if ch == '\r':
392  continue
393  if ch == ':':
394  break
395  if ch != '\n':
396  dummy = ifp.readline()
397 
398  hqxifp = _Hqxdecoderengine(ifp)
399  self.ifp = _Rledecoderengine(hqxifp)
400  self.crc = 0
401  self._readheader()

Member Function Documentation

def close (   self)

Definition at line 472 of file binhex.py.

References HexBin._checkcrc(), HexBin.read_rsrc(), BinHex.rlen, HexBin.rlen, BinHex.state, and HexBin.state.

473  def close(self):
474  if self.rlen:
475  dummy = self.read_rsrc(self.rlen)
476  self._checkcrc()
477  self.state = _DID_RSRC
478  self.ifp.close()
def close_data (   self)

Definition at line 451 of file binhex.py.

References HexBin._checkcrc(), HexBin._read(), BinHex.dlen, HexBin.dlen, BinHex.state, and HexBin.state.

452  def close_data(self):
453  if self.state != _DID_HEADER:
454  raise Error, 'close_data at wrong time'
455  if self.dlen:
456  dummy = self._read(self.dlen)
457  self._checkcrc()
458  self.state = _DID_DATA
def read (   self,
  n 
)

Definition at line 437 of file binhex.py.

References HexBin._read(), BinHex.dlen, HexBin.dlen, sre_parse.min, BinHex.state, and HexBin.state.

438  def read(self, *n):
439  if self.state != _DID_HEADER:
440  raise Error, 'Read data at wrong time'
441  if n:
442  n = n[0]
443  n = min(n, self.dlen)
444  else:
445  n = self.dlen
446  rv = ''
447  while len(rv) < n:
448  rv = rv + self._read(n-len(rv))
449  self.dlen = self.dlen - n
450  return rv
def read_rsrc (   self,
  n 
)

Definition at line 459 of file binhex.py.

References HexBin._read(), BinHex.close_data(), HexBin.close_data(), sre_parse.min, BinHex.rlen, HexBin.rlen, BinHex.state, and HexBin.state.

460  def read_rsrc(self, *n):
461  if self.state == _DID_HEADER:
462  self.close_data()
463  if self.state != _DID_DATA:
464  raise Error, 'Read resource data at wrong time'
465  if n:
466  n = n[0]
467  n = min(n, self.rlen)
468  else:
469  n = self.rlen
470  self.rlen = self.rlen - n
471  return self._read(n)

Field Documentation

crc

Definition at line 399 of file binhex.py.

dlen

Definition at line 426 of file binhex.py.

FInfo

Definition at line 430 of file binhex.py.

FName

Definition at line 429 of file binhex.py.

ifp

Definition at line 398 of file binhex.py.

rlen

Definition at line 427 of file binhex.py.

state

Definition at line 435 of file binhex.py.


The documentation for this class was generated from the following file: