Source for file CacheBase.php
Documentation is available at CacheBase.php
* Copyright (c) 2006 - 2011 PHPExcel
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* @package PHPExcel_CachedObjectStorage
* @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
* @version 1.7.6, 2011-02-27
* PHPExcel_CachedObjectStorage_CacheBase
* @package PHPExcel_CachedObjectStorage
* @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
* @var PHPExcel_Worksheet
* The currently active Cell
* Coordinate address of the currently active Cell
* An array of cells or cell pointers for the worksheet cells held in this cache,
* and indexed by their coordinate address within the worksheet
public function __construct(PHPExcel_Worksheet $parent) {
// Set our parent worksheet.
// This is maintained within the cache controller to facilitate re-attaching it to PHPExcel_Cell objects when
// they are woken from a serialized state
} // function __construct()
* Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?
* @param string $pCoord Coordinate address of the cell to check
// Check if the requested entry exists in the cache
} // function isDataSet()
* Add or Update a cell in cache
* @param PHPExcel_Cell $cell Cell to update
return $this->addCacheData($cell->getCoordinate(),$cell);
} // function updateCacheData()
* Delete a cell in cache identified by coordinate address
* @param string $pCoord Coordinate address of the cell to delete
} // function deleteCacheData()
* Get a list of all cell addresses currently held in cache
* @return array of string
} // function getCellList()
* Sort the list of all cell addresses currently held in cache by row and column
list ($column,$row) = sscanf($coord,'%[A-Z]%d');
$sortKeys[sprintf('%09d%3s',$row,$column)] = $coord;
} // function sortCellList()
$baseUnique = posix_getpid();
return uniqid($baseUnique,true);
* Clone the cell collection
} // function copyCellCollection()
|