IECore::FileIndexedIO Class Reference

#include <FileIndexedIO.h>

Inheritance diagram for IECore::FileIndexedIO:

IECore::IndexedIOInterface IECore::RefCounted IECore::MemoryIndexedIO

List of all members.

Classes

class  Index
 A tree to represent nodes in a filesystem, along with their locations in a file. More...
class  IndexedFile
class  Node
 A single node within an index. More...

Public Member Functions

 IE_CORE_DECLAREMEMBERPTR (FileIndexedIO)
 FileIndexedIO (const std::string &path, const IndexedIO::EntryID &root, IndexedIO::OpenMode mode)
 Open an existing device or create a new one.
virtual ~FileIndexedIO ()
virtual IndexedIO::OpenMode openMode () const
 Returns the mode with which the interface was created.
IndexedIOInterfacePtr resetRoot () const
 Returns a new interface with the root set to the current directory.
void chdir (const IndexedIO::EntryID &name)
void mkdir (const IndexedIO::EntryID &name)
IndexedIO::EntryID pwd ()
 Retrieve the current directorys, relative to the root.
IndexedIO::EntryList ls (IndexedIOFilterPtr f=0)
IndexedIO::Entry ls (const IndexedIO::EntryID &name)
 Return details of a specific entry.
unsigned long rm (const IndexedIO::EntryID &name)
void write (const IndexedIO::EntryID &name, const float *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const double *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const half *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const int *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const int64_t *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const uint64_t *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const unsigned int *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const char *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const unsigned char *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const std::string *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const short *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const unsigned short *x, unsigned long arrayLength)
void write (const IndexedIO::EntryID &name, const float &x)
void write (const IndexedIO::EntryID &name, const double &x)
void write (const IndexedIO::EntryID &name, const half &x)
void write (const IndexedIO::EntryID &name, const int &x)
void write (const IndexedIO::EntryID &name, const int64_t &x)
void write (const IndexedIO::EntryID &name, const uint64_t &x)
void write (const IndexedIO::EntryID &name, const std::string &x)
void write (const IndexedIO::EntryID &name, const unsigned int &x)
void write (const IndexedIO::EntryID &name, const char &x)
void write (const IndexedIO::EntryID &name, const unsigned char &x)
void write (const IndexedIO::EntryID &name, const short &x)
void write (const IndexedIO::EntryID &name, const unsigned short &x)
void read (const IndexedIO::EntryID &name, float *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, double *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, half *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, int *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, int64_t *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, uint64_t *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, unsigned int *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, char *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, unsigned char *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, std::string *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, short *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, unsigned short *&x, unsigned long arrayLength)
void read (const IndexedIO::EntryID &name, float &x)
void read (const IndexedIO::EntryID &name, double &x)
void read (const IndexedIO::EntryID &name, half &x)
void read (const IndexedIO::EntryID &name, int &x)
void read (const IndexedIO::EntryID &name, int64_t &x)
void read (const IndexedIO::EntryID &name, uint64_t &x)
void read (const IndexedIO::EntryID &name, std::string &x)
void read (const IndexedIO::EntryID &name, unsigned int &x)
void read (const IndexedIO::EntryID &name, char &x)
void read (const IndexedIO::EntryID &name, unsigned char &x)
void read (const IndexedIO::EntryID &name, short &x)
void read (const IndexedIO::EntryID &name, unsigned short &x)
ConstCharVectorDataPtr buf ()

Static Public Member Functions

static IndexedIOInterfacePtr create (const std::string &path, const IndexedIO::EntryID &root, IndexedIO::OpenMode mode)
static bool canRead (const std::string &path)

Protected Member Functions

 FileIndexedIO (const FileIndexedIO &other, IndexedIO::OpenMode mode)
bool exists (const IndexedIOPath &path, IndexedIO::EntryType e) const
 Check for existence of the entry with specified type.
bool exists (const IndexedIO::EntryID &name) const
 Check for existence of the entry with any type.
unsigned long rm (const IndexedIO::EntryID &name, bool throwIfNonExistent)
template<typename T >
void write (const IndexedIO::EntryID &name, const T *x, unsigned long arrayLength)
template<typename T >
void read (const IndexedIO::EntryID &name, T *&x, unsigned long arrayLength) const
template<typename T >
void write (const IndexedIO::EntryID &name, const T &x)
template<typename T >
void read (const IndexedIO::EntryID &name, T &x) const
 IE_CORE_DECLAREPTR (Index)
 IE_CORE_DECLAREPTR (IndexedFile)
 IE_CORE_DECLAREPTR (Node)
bool find (const IndexedIO::EntryID &name, NodePtr &node) const
NodePtr insert (const IndexedIO::EntryID &name)
boost::optional< Imf::Int64 > flush ()
std::iostream * device ()
void open (std::iostream *device, const IndexedIO::EntryID &root, IndexedIO::OpenMode mode, bool newStream=false)
 FileIndexedIO ()

Protected Attributes

IndexedIOPath m_currentDirectory
IndexedIO::OpenMode m_mode
 The mode this device was opened with.
IndexedFilePtr m_indexedFile
NodePtr m_currentDirectoryNode
NodePtr m_rootDirectoryNode


Detailed Description

An implementation of IndexedIOInterface which operates within a single file on disk.
Todo:
Most of the implementation of this class would be better of in a "StreamIndexedIO" class which FileIndexedIO and MemoryIndexedIO derive from. MemoryIndexedIO wasn't implemented that cleanly in the first place due to the necessity to maintain binary compatibility.

Constructor & Destructor Documentation

FileIndexedIO::FileIndexedIO ( const std::string &  path,
const IndexedIO::EntryID root,
IndexedIO::OpenMode  mode 
)

FileIndexedIO::~FileIndexedIO (  )  [virtual]

FileIndexedIO::FileIndexedIO ( const FileIndexedIO other,
IndexedIO::OpenMode  mode 
) [protected]

FileIndexedIO::FileIndexedIO (  )  [protected]

Referenced by create(), and resetRoot().


Member Function Documentation

ConstCharVectorDataPtr IECore::FileIndexedIO::buf (  ) 

bool FileIndexedIO::canRead ( const std::string &  path  )  [static]

void FileIndexedIO::chdir ( const IndexedIO::EntryID name  )  [virtual]

Relocate to a different directory within the current device. Attempting to navigate above the current root directory will throw an exception.

Parameters:
name The directory to relocate to. Can be an absolute or relative path. Special directory names such as ".", "..", and "/" are supported.

Implements IECore::IndexedIOInterface.

References IECore::IndexedIOPath::append(), IECore::IndexedIO::Directory, find(), IECore::IndexedIOPath::fullPath(), m_currentDirectory, m_currentDirectoryNode, and IECore::IndexedIOInterface::readable().

Referenced by FileIndexedIO(), open(), and rm().

IndexedIOInterfacePtr FileIndexedIO::create ( const std::string &  path,
const IndexedIO::EntryID root,
IndexedIO::OpenMode  mode 
) [static]

Create an instance of a subclass which is able to open the IndexedIO structure found at "path". Files can be opened for Read, Overwrite, or Append. During "Read" operations it is not permitted to make any modifications to the underlying files. When opening a device in "Write" mode its contents below the root directory are removed. For "Append" operations it is possible to write new files, or overwrite existing ones. It is not possible to overwrite entire directories, however.

Parameters:
path A file or directory on disk. The appropriate reader for reading/writing is determined by the path's extension.
root The root point to 'mount' the structure. Paths above the root in the hierarchy are inaccessible.
mode A bitwise-ORed combination of constants which determine how the file system should be accessed.

Reimplemented from IECore::IndexedIOInterface.

References FileIndexedIO().

std::iostream * FileIndexedIO::device (  )  [protected]

Todo:
Add virtual method to obtain device name ( e.g filename, "memory", etc )

References m_indexedFile.

Referenced by IECore::MemoryIndexedIO::buffer().

bool FileIndexedIO::exists ( const IndexedIO::EntryID name  )  const [protected]

Check for existence of the entry with any type.

References find(), m_currentDirectoryNode, and IECore::IndexedIOInterface::readable().

bool FileIndexedIO::exists ( const IndexedIOPath path,
IndexedIO::EntryType  e 
) const [protected]

Check for existence of the entry with specified type.

References IECore::IndexedIO::Directory, IECore::IndexedIOPath::fullPath(), and m_indexedFile.

Referenced by FileIndexedIO(), and open().

bool FileIndexedIO::find ( const IndexedIO::EntryID name,
NodePtr &  node 
) const [protected]

References m_currentDirectoryNode, and m_rootDirectoryNode.

Referenced by chdir(), exists(), ls(), read(), and rm().

boost::optional< Imf::Int64 > FileIndexedIO::flush (  )  [protected]

Todo:
Should be virtual

References m_indexedFile.

Referenced by IECore::MemoryIndexedIO::buffer().

IECore::FileIndexedIO::IE_CORE_DECLAREMEMBERPTR ( FileIndexedIO   ) 

IECore::FileIndexedIO::IE_CORE_DECLAREPTR ( Node   )  [protected]

IECore::FileIndexedIO::IE_CORE_DECLAREPTR ( IndexedFile   )  [protected]

IECore::FileIndexedIO::IE_CORE_DECLAREPTR ( Index   )  [protected]

FileIndexedIO::NodePtr FileIndexedIO::insert ( const IndexedIO::EntryID name  )  [protected]

References m_currentDirectoryNode, and m_rootDirectoryNode.

Referenced by mkdir(), and write().

IndexedIO::Entry FileIndexedIO::ls ( const IndexedIO::EntryID name  )  [virtual]

Return details of a specific entry.

Implements IECore::IndexedIOInterface.

References find(), m_currentDirectoryNode, and IECore::IndexedIOInterface::readable().

IndexedIO::EntryList FileIndexedIO::ls ( IndexedIOFilterPtr  f = 0  )  [virtual]

Find file and/or directory names contained within the current index. Short names to the files/directories are always returned.

Parameters:
f A subclass of IndexedIOFilter to allow removal of entries which are of no conern.

Implements IECore::IndexedIOInterface.

References m_currentDirectoryNode, and IECore::IndexedIOInterface::readable().

void FileIndexedIO::mkdir ( const IndexedIO::EntryID name  )  [virtual]

Create a new directory. Automatically creates parent directories if needed.

Parameters:
name The directory to create.

Implements IECore::IndexedIOInterface.

References IECore::IndexedIO::Directory, insert(), IECore::IndexedIO::Invalid, and IECore::IndexedIOInterface::writable().

void FileIndexedIO::open ( std::iostream *  device,
const IndexedIO::EntryID root,
IndexedIO::OpenMode  mode,
bool  newStream = false 
) [protected]

IndexedIO::OpenMode FileIndexedIO::openMode (  )  const [virtual]

Returns the mode with which the interface was created.

Implements IECore::IndexedIOInterface.

References m_mode.

IndexedIO::EntryID FileIndexedIO::pwd (  )  [virtual]

Retrieve the current directorys, relative to the root.

Implements IECore::IndexedIOInterface.

References m_currentDirectory, IECore::IndexedIOInterface::readable(), and IECore::IndexedIOPath::relativePath().

template<typename T >
void FileIndexedIO::read ( const IndexedIO::EntryID name,
T &  x 
) const [inline, protected]

template<typename T >
void FileIndexedIO::read ( const IndexedIO::EntryID name,
T *&  x,
unsigned long  arrayLength 
) const [inline, protected]

void FileIndexedIO::read ( const IndexedIO::EntryID name,
unsigned short &  x 
) [virtual]

Read an unsigned char from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
short &  x 
) [virtual]

Read a short from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
unsigned char &  x 
) [virtual]

Read an unsigned char from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
char &  x 
) [virtual]

Read a char from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
unsigned int &  x 
) [virtual]

Read an unsigned int from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
std::string &  x 
) [virtual]

Read a string from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
uint64_t &  x 
) [virtual]

Read a long from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
int64_t &  x 
) [virtual]

Read a long from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
int &  x 
) [virtual]

Read an int from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
half &  x 
) [virtual]

Read a half from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
double &  x 
) [virtual]

Read a double from an existing file

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
float &  x 
) [virtual]

Read a float from an existing file.

Parameters:
name The name of the file to be read
x Returns the data read.

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
unsigned short *&  x,
unsigned long  arrayLength 
) [virtual]

Read an unsigned short array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
short *&  x,
unsigned long  arrayLength 
) [virtual]

Read a short array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
std::string *&  x,
unsigned long  arrayLength 
) [virtual]

Read a string array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
unsigned char *&  x,
unsigned long  arrayLength 
) [virtual]

Read an unsigned char array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
char *&  x,
unsigned long  arrayLength 
) [virtual]

Read a char array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
unsigned int *&  x,
unsigned long  arrayLength 
) [virtual]

Read an unsigned int array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
uint64_t *&  x,
unsigned long  arrayLength 
) [virtual]

Read a long array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
int64_t *&  x,
unsigned long  arrayLength 
) [virtual]

Read a long array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
int *&  x,
unsigned long  arrayLength 
) [virtual]

Read an int array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
half *&  x,
unsigned long  arrayLength 
) [virtual]

Read a half array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
double *&  x,
unsigned long  arrayLength 
) [virtual]

Read a double array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::read ( const IndexedIO::EntryID name,
float *&  x,
unsigned long  arrayLength 
) [virtual]

Read a float array from an existing file.

Parameters:
name The name of the file to be read
x The buffer to fill. If 0 is passed, then memory is allocated and should be freed by the caller.
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

IndexedIOInterfacePtr FileIndexedIO::resetRoot (  )  const [virtual]

Returns a new interface with the root set to the current directory.

Implements IECore::IndexedIOInterface.

References IECore::IndexedIO::Append, IECore::IndexedIO::Exclusive, FileIndexedIO(), m_mode, IECore::IndexedIO::Shared, and IECore::IndexedIO::Write.

unsigned long FileIndexedIO::rm ( const IndexedIO::EntryID name,
bool  throwIfNonExistent 
) [protected]

Variant of "rm" which allows exceptions to be optionally thrown if the entry to remove does not exist.

References chdir(), find(), m_currentDirectory, m_currentDirectoryNode, m_indexedFile, IECore::IndexedIOPath::relativePath(), and IECore::IndexedIOInterface::writable().

unsigned long FileIndexedIO::rm ( const IndexedIO::EntryID name  )  [virtual]

Remove a specified file or directory. If an attempt is made to delete the current directory, the operation is permitted but the current directory is then undefined and must be reset using chdir with an absolute path.

Implements IECore::IndexedIOInterface.

Referenced by FileIndexedIO(), open(), and write().

template<typename T >
void FileIndexedIO::write ( const IndexedIO::EntryID name,
const T &  x 
) [inline, protected]

template<typename T >
void FileIndexedIO::write ( const IndexedIO::EntryID name,
const T *  x,
unsigned long  arrayLength 
) [inline, protected]

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const unsigned short &  x 
) [virtual]

Create a new file containing the specified unsigned short

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const short &  x 
) [virtual]

Create a new file containing the specified short

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const unsigned char &  x 
) [virtual]

Create a new file containing the specified unsigned char

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const char &  x 
) [virtual]

Create a new file containing the specified char

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const unsigned int &  x 
) [virtual]

Create a new file containing the specified unsigned int

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const std::string &  x 
) [virtual]

Create a new file containing the specified string

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const uint64_t &  x 
) [virtual]

Create a new file containing the specified long

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const int64_t &  x 
) [virtual]

Create a new file containing the specified long

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const int &  x 
) [virtual]

Create a new file containing the specified int

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const half &  x 
) [virtual]

Create a new file containing the specified half

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const double &  x 
) [virtual]

Create a new file containing the specified double

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const float &  x 
) [virtual]

Create a new file containing the specified float

Parameters:
name The name of the file to be written
x The data to write

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const unsigned short *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified unsigned short array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const short *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified short array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const std::string *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified string array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const unsigned char *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified unsigned char array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const char *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified char array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const unsigned int *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified unsigned int array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const uint64_t *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified unsigned long array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const int64_t *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified unsigned long array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const int *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified unsigned int array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const half *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified half array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const double *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified double array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.

void FileIndexedIO::write ( const IndexedIO::EntryID name,
const float *  x,
unsigned long  arrayLength 
) [virtual]

Create a new file containing the specified float array contents

Parameters:
name The name of the file to be written
x The data to write
arrayLength The number of elements in the array

Implements IECore::IndexedIOInterface.


Member Data Documentation

Referenced by chdir(), FileIndexedIO(), open(), pwd(), and rm().

IndexedFilePtr IECore::FileIndexedIO::m_indexedFile [protected]

The mode this device was opened with.

Referenced by FileIndexedIO(), open(), openMode(), resetRoot(), and write().

Referenced by FileIndexedIO(), find(), insert(), and open().


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

Generated on Mon Jan 24 11:13:24 2011 for Cortex by doxygen 1.5.8