E57 Foundation API v1.1.312  Aug. 10, 2011
CompressedVectorWriter writer ( std::vector< SourceDestBuffer > &  sbufs)

Create an iterator object for writing a series of blocks of data to a CompressedVectorNode.

Parameters:
[in]sbufsVector of memory buffers that will hold data to be written to a CompressedVectorNode.

See CompressedVectorWriter::write(std::vector<SourceDestBuffer>&, unsigned) for discussion about restrictions on sbufs.

The pathNames in the sbufs must match one-to-one with the terminal nodes (i.e. nodes that can have no children: IntegerNode, ScaledIntegerNode, FloatNode, StringNode) in this CompressedVectorNode's prototype. It is an error for two SourceDestBuffers in dbufs to identify the same terminal node in the prototype.

It is an error to call this function if the CompressedVectorNode already has any records (i.e. a CompressedVectorNode cannot be set twice).

Precondition:
sbufs can't be empty (i.e. sbufs.length() > 0).
The destination ImageFile must be open (i.e. destImageFile().isOpen()).
The destImageFile must have been opened in write mode (i.e. destImageFile.isWritable()).
The destination ImageFile can't have any readers or writers open (destImageFile().readerCount()==0 && destImageFile().writerCount()==0)
This CompressedVectorNode must be attached (i.e. isAttached()).
This CompressedVectorNode must have no records (i.e. childCount() == 0).
Returns:
A smart CompressedVectorWriter handle referencing the underlying iterator object.
Exceptions:
E57_ERROR_BAD_API_ARGUMENT
E57_ERROR_IMAGEFILE_NOT_OPEN
E57_ERROR_FILE_IS_READ_ONLY
E57_ERROR_SET_TWICE
E57_ERROR_TOO_MANY_WRITERS
E57_ERROR_TOO_MANY_READERS
E57_ERROR_NODE_UNATTACHED
E57_ERROR_PATH_UNDEFINED
E57_ERROR_BUFFER_SIZE_MISMATCH
E57_ERROR_BUFFER_DUPLICATE_PATHNAME
E57_ERROR_NO_BUFFER_FOR_ELEMENT
E57_ERROR_INTERNALAll objects in undocumented state
See also:
SourceDestBufferFunctions.cpp example, CompressedVectorWriter, SourceDestBuffer, CompressedVectorNode::CompressedVectorNode, CompressedVectorNode::prototype
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines