IImport Class Referenceabstract

base class for importing original geometry data file More...

#include "IImport.hpp"

+ Inheritance diagram for IImport:

Classes

struct  InvalidObjectStatistic
 

Public Member Functions

virtual unsigned serialize (char *representation=0) const =0
 
virtual void setControlObject (ControlObjectHandle control)=0
 
virtual ControlObjectHandle getControlObject () const =0
 
virtual FileHeaderHandle getHeader () const =0
 
virtual void setFilter (FilterHandle filter)=0
 
virtual FilterHandle getFilter () const =0
 
virtual void setPolygonMerging (PolygonMerging mode)=0
 
virtual PolygonMerging getPolygonMerging () const =0
 
virtual const char * getFilename () const =0
 Returns the filename.
 
virtual DataFormat getFileFormat () const =0
 Returns the file format.
 
virtual void logTo (LogFn logFn)=0
 Set logging call back function.
 
virtual bool readHeaderSeparately ()=0
 read the header in advance
 
virtual ImportError readNext (GeometryHandle &obj)=0
 read next object from import object
 
virtual InvalidObjectStatistic getInvalidGeometries () const =0
 get a statistic of invalid geometries (after import)
 
- Public Member Functions inherited from ObjectBase
virtual void Delete ()
 

Static Public Member Functions

static IImportNew (const char *file, DataFormat format, FilterHandle filter=FilterHandle(), ControlObjectHandle control=ControlObjectHandle(), bool collectHdrContents=false, unsigned maxBulkPoints=1000, AddInfoLayoutHandle defaultLayout=AddInfoLayoutHandle())
 creates new import object More...
 
static IImportNew (void *instance, const char *file, DataFormat format, FilterHandle filter=FilterHandle(), ControlObjectHandle control=ControlObjectHandle(), bool collectHdrContents=false, unsigned maxBulkPoints=1000, AddInfoLayoutHandle defaultLayout=AddInfoLayoutHandle())
 creates new import object More...
 
static IImportNewODM (Handle< IDatamanager > manager, bool restoreOrder, FilterHandle filter=FilterHandle(), ControlObjectHandle control=ControlObjectHandle(), bool collectHdrContents=false, unsigned maxBulkPoints=1000)
 deprecated odm import creation functions (use IImportODM::New instead)
 
static IImportNewODM (IDatamanager &manager, bool restoreOrder, FilterHandle filter=FilterHandle(), ControlObjectHandle control=ControlObjectHandle(), bool collectHdrContents=false, unsigned maxBulkPoints=1000)
 deprecated odm import creation functions (use IImportODM::New instead)
 
static IImportNewGDAL (const char *file, FilterHandle filter=FilterHandle(), ControlObjectHandle control=ControlObjectHandle(), bool collectHdrContents=false, unsigned maxBulkPoints=1000, unsigned bandNumber=1, const char *driver=0)
 
static IImportNewWinput (const char *file, bool binary, ColumnSemantic structIdAddInfoCol=ColumnSemantic::null, ColumnSemantic wnpCodeAddInfoCol=ColumnSemantic::null, FilterHandle filter=FilterHandle(), ControlObjectHandle control=ControlObjectHandle(), bool collectHdrContents=false, unsigned maxBulkPoints=1000, AddInfoLayoutHandle layout=AddInfoLayoutHandle())
 
static IImportunserialize (const char *representation, unsigned repSize)
 Restore an import object from its string representation. Since the representation may contain null bytes, its size must also be specified.
 

Detailed Description

base class for importing original geometry data file

Member Function Documentation

◆ New() [1/2]

static IImport* New ( const char *  file,
DataFormat  format,
FilterHandle  filter = FilterHandle(),
ControlObjectHandle  control = ControlObjectHandle(),
bool  collectHdrContents = false,
unsigned  maxBulkPoints = 1000,
AddInfoLayoutHandle  defaultLayout = AddInfoLayoutHandle() 
)
static

creates new import object

interface for importing geometry objects for different file formats. if not specified the function automatically detects the file format based on the file content.

Parameters
[in]filefilename
[in]formatdefines file format or use null for auto detection
[in]filterfilter for subselecting/transforming objects during import
[in]controlcontrol object for retrieving import progress information
[in]collectHdrContentsflag for explicitly collecting header information while importing
[in]maxBulkPointschunk size for bulk points being imported at once
[in]defaultLayoutdefault attribute layout for objects while importing (attribute stored within the file, will be extended to this layout)

◆ New() [2/2]

static IImport* New ( void *  instance,
const char *  file,
DataFormat  format,
FilterHandle  filter = FilterHandle(),
ControlObjectHandle  control = ControlObjectHandle(),
bool  collectHdrContents = false,
unsigned  maxBulkPoints = 1000,
AddInfoLayoutHandle  defaultLayout = AddInfoLayoutHandle() 
)
static

creates new import object

interface for importing geometry objects for different file formats. if not specified the function automatically detects the file format based on the file content.

Parameters
[in]instanceptr to parent module instance
[in]filefilename
[in]formatdefines file format or use null for auto detection
[in]filterfilter for subselecting/transforming objects during import
[in]controlcontrol object for retrieving import progress information
[in]collectHdrContentsflag for explicitly collecting header information while importing
[in]maxBulkPointschunk size for bulk points being imported at once
[in]defaultLayoutdefault attribute layout for objects while importing (attribute stored within the file, will be extended to this layout)

◆ serialize()

virtual unsigned serialize ( char *  representation = 0) const
pure virtual

Store the string representation of the import object in representation and return the length of representation. Memory for representation must be allocated externally. Pass a null pointer to query the length of representation only. Note that the stored representation may contain null bytes.