| 
    E57 Simple API V1.0.312
    Aug. 10, 2012
    
   | 
 
This is the E57 Writer class. More...
#include <E57Simple.h>
Public Member Functions | |
| Writer (const ustring &filePath, const ustring &coordinateMetaData) | |
| This function is the constructor for the writer class.   | |
| bool | IsOpen (void) const | 
| This function returns true if the file is open.   | |
| bool | Close (void) const | 
| This function closes the file.  | |
| int32_t | NewImage2D (Image2D &image2DHeader) const | 
| This function sets up the image2D header and positions the cursor.   | |
| int64_t | WriteImage2DData (int32_t imageIndex, e57::Image2DType imageType, e57::Image2DProjection imageProjection, void *pBuffer, int64_t start, int64_t count) const | 
| This function writes the image block of data.   | |
| int32_t | NewData3D (Data3D &data3DHeader) const | 
| This function sets up the Data3D header and positions the cursor for the binary data.   | |
| CompressedVectorWriter | SetUpData3DPointsData (int32_t dataIndex, int64_t pointCount, double *cartesianX, double *cartesianY, double *cartesianZ, int8_t *cartesianInvalidState=NULL, double *intensity=NULL, int8_t *isIntensityInvalid=NULL, uint16_t *colorRed=NULL, uint16_t *colorGreen=NULL, uint16_t *colorBlue=NULL, int8_t *isColorInvalid=NULL, double *sphericalRange=NULL, double *sphericalAzimuth=NULL, double *sphericalElevation=NULL, int8_t *sphericalInvalidState=NULL, int32_t *rowIndex=NULL, int32_t *columnIndex=NULL, int8_t *returnIndex=NULL, int8_t *returnCount=NULL, double *timeStamp=NULL, int8_t *isTimeStampInvalid=NULL) const | 
| This function writes out blocks of point data.   | |
| bool | WriteData3DGroupsData (int32_t dataIndex, int32_t groupCount, int64_t *idElementValue, int64_t *startPointIndex, int64_t *pointCount) const | 
| This funtion writes out the group data.   | |
| StructureNode | GetRawE57Root (void) | 
| This function returns the file raw E57Root Structure Node.   | |
| VectorNode | GetRawData3D (void) | 
| This function returns the raw Data3D Vector Node.   | |
| VectorNode | GetRawImages2D (void) | 
| This function returns the raw Image2D Vector Node.   | |
This is the E57 Writer class.
| Writer::Writer | ( | const ustring & | filePath, | 
| const ustring & | coordinateMetaData | ||
| ) | 
This function is the constructor for the writer class.
| filePath | file path string | 
| coordinateMetaData | Information describing the Coordinate Reference System to be used for the file | 
| VectorNode Writer::GetRawData3D | ( | void | ) | 
| StructureNode Writer::GetRawE57Root | ( | void | ) | 
| VectorNode Writer::GetRawImages2D | ( | void | ) | 
| bool Writer::IsOpen | ( | void | ) | const | 
This function returns true if the file is open.
| int32_t Writer::NewData3D | ( | Data3D & | data3DHeader | ) | const | 
| int32_t Writer::NewImage2D | ( | Image2D & | image2DHeader | ) | const | 
This function sets up the image2D header and positions the cursor.
| image2DHeader | pointer to the Image2D structure to receive the picture information | 
| CompressedVectorWriter Writer::SetUpData3DPointsData | ( | int32_t | dataIndex, | 
| int64_t | pointCount, | ||
| double * | cartesianX, | ||
| double * | cartesianY, | ||
| double * | cartesianZ, | ||
| int8_t * | cartesianInvalidState = NULL,  | 
        ||
| double * | intensity = NULL,  | 
        ||
| int8_t * | isIntensityInvalid = NULL,  | 
        ||
| uint16_t * | colorRed = NULL,  | 
        ||
| uint16_t * | colorGreen = NULL,  | 
        ||
| uint16_t * | colorBlue = NULL,  | 
        ||
| int8_t * | isColorInvalid = NULL,  | 
        ||
| double * | sphericalRange = NULL,  | 
        ||
| double * | sphericalAzimuth = NULL,  | 
        ||
| double * | sphericalElevation = NULL,  | 
        ||
| int8_t * | sphericalInvalidState = NULL,  | 
        ||
| int32_t * | rowIndex = NULL,  | 
        ||
| int32_t * | columnIndex = NULL,  | 
        ||
| int8_t * | returnIndex = NULL,  | 
        ||
| int8_t * | returnCount = NULL,  | 
        ||
| double * | timeStamp = NULL,  | 
        ||
| int8_t * | isTimeStampInvalid = NULL  | 
        ||
| ) | const | 
This function writes out blocks of point data.
| dataIndex | data block index given by the NewData3D | 
| pointCount | size of each of the buffers given | 
| cartesianX | pointer to a buffer with the X coordinate (in meters) of the point in Cartesian coordinates | 
| cartesianY | pointer to a buffer with the Y coordinate (in meters) of the point in Cartesian coordinates | 
| cartesianZ | pointer to a buffer with the Z coordinate (in meters) of the point in Cartesian coordinates | 
| cartesianInvalidState | Value = 0 if the point is considered valid, 1 otherwise | 
| intensity | pointer to a buffer with the Point response intensity. Unit is unspecified | 
| isIntensityInvalid | Value = 0 if the intensity is considered valid, 1 otherwise | 
| colorRed | pointer to a buffer with the Red color coefficient. Unit is unspecified | 
| colorGreen | pointer to a buffer with the Green color coefficient. Unit is unspecified | 
| colorBlue | pointer to a buffer with the Blue color coefficient. Unit is unspecified | 
| isColorInvalid | Value = 0 if the color is considered valid, 1 otherwise | 
| sphericalRange | pointer to a buffer with the range (in meters) of points in spherical coordinates. Shall be non-negative | 
| sphericalAzimuth | pointer to a buffer with the Azimuth angle (in radians) of point in spherical coordinates | 
| sphericalElevation | pointer to a buffer with the Elevation angle (in radians) of point in spherical coordinates | 
| sphericalInvalidState | Value = 0 if the range is considered valid, 1 otherwise | 
| rowIndex | pointer to a buffer with the row number of point (zero based). This is useful for data that is stored in a regular grid.Shall be in the interval (0, 2^31). | 
| columnIndex | pointer to a buffer with the column number of point (zero based). This is useful for data that is stored in a regular grid. Shall be in the interval (0, 2^31). | 
| returnIndex | pointer to a buffer with the number of this return (zero based). That is, 0 is the first return, 1 is the second, and so on. Shall be in the interval (0, returnCount). Only for multi-return sensors. | 
| returnCount | pointer to a buffer with the total number of returns for the pulse that this corresponds to. Shall be in the interval (0, 2^7). Only for multi-return sensors. | 
| timeStamp | pointer to a buffer with the time (in seconds) since the start time for the data, which is given by acquisitionStart in the parent Data3D Structure. Shall be non-negative | 
| isTimeStampInvalid | Value = 0 if the timeStamp is considered valid, 1 otherwise | 
| bool Writer::WriteData3DGroupsData | ( | int32_t | dataIndex, | 
| int32_t | groupCount, | ||
| int64_t * | idElementValue, | ||
| int64_t * | startPointIndex, | ||
| int64_t * | pointCount | ||
| ) | const | 
This funtion writes out the group data.
| dataIndex | data block index given by the NewData3D | 
| groupCount | size of each of the buffers given | 
| idElementValue | index for this group | 
| startPointIndex | Starting index in to the "points" data vector for the groups | 
| pointCount | size of the groups given | 
| int64_t Writer::WriteImage2DData | ( | int32_t | imageIndex, | 
| e57::Image2DType | imageType, | ||
| e57::Image2DProjection | imageProjection, | ||
| void * | pBuffer, | ||
| int64_t | start, | ||
| int64_t | count | ||
| ) | const | 
This function writes the image block of data.
| imageIndex | picture block index given by the NewImage2D | 
| imageType | identifies the image format desired. | 
| imageProjection | identifies the projection desired. | 
| pBuffer | pointer the buffer | 
| start | position in the block to start writing | 
| count | size of desired chuck or buffer size | 
 1.8.2