Public Member Functions | |
OLE_PPS ($No, $name, $type, $prev, $next, $dir, $time_1st, $time_2nd, $data, $children) | |
The constructor. | |
_DataLen () | |
Returns the amount of data saved for this PPS. | |
_getPpsWk () | |
Returns a string with the PPS's WK (What is a WK?). | |
_savePpsSetPnt (&$pps_array) | |
Updates index and pointers to previous, next and children PPS's for this PPS. | |
Data Fields | |
$No | |
$Name | |
$Type | |
$PrevPps | |
$NextPps | |
$DirPps | |
$Time1st | |
$Time2nd | |
$_StartBlock | |
$Size | |
$_data | |
$children = array() |
Definition at line 33 of file PPS.php.
OLE_PPS::_DataLen | ( | ) |
Returns the amount of data saved for this PPS.
private
Definition at line 147 of file PPS.php.
{ if (!isset($this->_data)) { return 0; } if (isset($this->_PPS_FILE)) { fseek($this->_PPS_FILE, 0); $stats = fstat($this->_PPS_FILE); return $stats[7]; } else { return strlen($this->_data); } }
OLE_PPS::_getPpsWk | ( | ) |
Returns a string with the PPS's WK (What is a WK?).
private
Definition at line 169 of file PPS.php.
References OLE::LocalDate2OLE().
Referenced by OLE_PPS_Root::_savePps().
{ $ret = $this->Name; for ($i = 0; $i < (64 - strlen($this->Name)); $i++) { $ret .= "\x00"; } $ret .= pack("v", strlen($this->Name) + 2) // 66 . pack("c", $this->Type) // 67 . pack("c", 0x00) //UK // 68 . pack("V", $this->PrevPps) //Prev // 72 . pack("V", $this->NextPps) //Next // 76 . pack("V", $this->DirPps) //Dir // 80 . "\x00\x09\x02\x00" // 84 . "\x00\x00\x00\x00" // 88 . "\xc0\x00\x00\x00" // 92 . "\x00\x00\x00\x46" // 96 // Seems to be ok only for Root . "\x00\x00\x00\x00" // 100 . OLE::LocalDate2OLE($this->Time1st) // 108 . OLE::LocalDate2OLE($this->Time2nd) // 116 . pack("V", isset($this->_StartBlock)? $this->_StartBlock:0) // 120 . pack("V", $this->Size) // 124 . pack("V", 0); // 128 return $ret; }
OLE_PPS::_savePpsSetPnt | ( | &$ | pps_array | ) |
Updates index and pointers to previous, next and children PPS's for this PPS.
I don't think it'll work with Dir PPS's.
private
array | &$pps_array Reference to the array of PPS's for the whole OLE container |
Definition at line 204 of file PPS.php.
Referenced by OLE_PPS_Root::save().
{ $pps_array[count($pps_array)] = &$this; $this->No = count($pps_array) - 1; $this->PrevPps = 0xFFFFFFFF; $this->NextPps = 0xFFFFFFFF; if (count($this->children) > 0) { $this->DirPps = $this->children[0]->_savePpsSetPnt($pps_array); } else { $this->DirPps = 0xFFFFFFFF; } return $this->No; }
OLE_PPS::OLE_PPS | ( | $ | No, | |
$ | name, | |||
$ | type, | |||
$ | prev, | |||
$ | next, | |||
$ | dir, | |||
$ | time_1st, | |||
$ | time_2nd, | |||
$ | data, | |||
$ | children | |||
) |
The constructor.
public
integer | $No The PPS index | |
string | $name The PPS name (in Unicode) | |
integer | $type The PPS type. Dir, Root or File | |
integer | $prev The index of the previous PPS | |
integer | $next The index of the next PPS | |
integer | $dir The index of it's first child if this is a Dir or Root PPS | |
integer | $time_1st A timestamp | |
integer | $time_2nd A timestamp | |
array | $children Array containing children PPS for this PPS |
Definition at line 121 of file PPS.php.
References $children, $data, $dir, $No, and $type.
Referenced by OLE_PPS_File::OLE_PPS_File(), and OLE_PPS_Root::OLE_PPS_Root().
{ $this->No = $No; $this->Name = $name; $this->Type = $type; $this->PrevPps = $prev; $this->NextPps = $next; $this->DirPps = $dir; $this->Time1st = $time_1st; $this->Time2nd = $time_2nd; $this->_data = $data; $this->children = $children; if ($data != '') { $this->Size = strlen($data); } else { $this->Size = 0; } }