ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
IoAbstractLoader Class Reference

#include <IoAbstractLoader.h>

Inheritance diagram for IoAbstractLoader:
Collaboration diagram for IoAbstractLoader:

Public Member Functions

bool canSave (CV_CLASS_ENUM inType, bool &outMultiple, bool &outExclusive) const override
 Returns whether this I/O filter can save the specified type of entity. More...
 
CC_FILE_ERROR loadFile (const QString &inFileName, ccHObject &ioContainer, LoadParameters &inParameters) override
 Loads one or more entities from a file. More...
 
- Public Member Functions inherited from FileIOFilter
virtual ~FileIOFilter ()=default
 
bool importSupported () const
 Returns whether this I/O filter can import files. More...
 
bool exportSupported () const
 Returns whether this I/O filter can export files. More...
 
const QStringList & getFileFilters (bool onImport) const
 Returns the file filter(s) for this I/O filter. More...
 
QString getDefaultExtension () const
 Returns the default file extension. More...
 
virtual CC_FILE_ERROR saveToFile (ccHObject *entity, const QString &filename, const SaveParameters &parameters)
 Saves an entity (or a group of) to a file. More...
 
virtual void unregister ()
 Called when the filter is unregistered. More...
 

Protected Member Functions

 IoAbstractLoader (const FileIOFilter::FilterInfo &info)
 
virtual void _postProcess (ccHObject &ioContainer)
 
- Protected Member Functions inherited from FileIOFilter
 FileIOFilter (const FilterInfo &info)
 
void setImportExtensions (const QStringList &extensions)
 
void setImportFileFilterStrings (const QStringList &filterStrings)
 
void setExportFileFilterStrings (const QStringList &filterStrings)
 

Additional Inherited Members

- Public Types inherited from FileIOFilter
enum  FilterFeature {
  NoFeatures = 0x0000 , Import = 0x00001 , Export = 0x0002 , BuiltIn = 0x0004 ,
  DynamicInfo = 0x0008
}
 
using Shared = QSharedPointer< FileIOFilter >
 Shared type. More...
 
using FilterContainer = std::vector< FileIOFilter::Shared >
 Type of a I/O filters container. More...
 
- Static Public Member Functions inherited from FileIOFilter
static QStringList ImportFilterList ()
 
static ccHObjectLoadFromFile (const QString &filename, LoadParameters &parameters, Shared filter, CC_FILE_ERROR &result)
 Loads one or more entities from a file with a known filter. More...
 
static ccHObjectLoadFromFile (const QString &filename, LoadParameters &parameters, CC_FILE_ERROR &result, const QString &fileFilter=QString())
 Loads one or more entities from a file with known type. More...
 
static CC_FILE_ERROR SaveToFile (ccHObject *entities, const QString &filename, const SaveParameters &parameters, Shared filter)
 
static CC_FILE_ERROR SaveToFile (ccHObject *entities, const QString &filename, const SaveParameters &parameters, const QString &fileFilter)
 
static bool HandleGlobalShift (const CCVector3d &P, CCVector3d &Pshift, bool &preserveCoordinateShift, LoadParameters &loadParameters, bool useInputCoordinatesShiftIfPossible=false)
 Shortcut to the ecvGlobalShiftManager mechanism specific for files. More...
 
static void DisplayErrorMessage (CC_FILE_ERROR err, const QString &action, const QString &filename)
 Displays (to console) the message corresponding to a given error code. More...
 
static bool CheckForSpecialChars (const QString &filename)
 Returns whether special characters are present in the input string. More...
 
static void ResetSesionCounter ()
 
static unsigned IncreaseSesionCounter ()
 
static void Register (Shared filter)
 Registers a new filter. More...
 
static Shared GetFilter (const QString &fileFilter, bool onImport)
 Returns the filter corresponding to the given 'file filter'. More...
 
static Shared FindBestFilterForExtension (const QString &ext)
 Returns the best filter (presumably) to open a given file extension. More...
 
static const FilterContainerGetFilters ()
 Returns the set of all registered filters. More...
 
static void UnregisterAll ()
 Unregisters all filters. More...
 
- Static Protected Attributes inherited from FileIOFilter
static constexpr float DEFAULT_PRIORITY = 25.0f
 

Detailed Description

Definition at line 12 of file IoAbstractLoader.h.

Constructor & Destructor Documentation

◆ IoAbstractLoader()

IoAbstractLoader::IoAbstractLoader ( const FileIOFilter::FilterInfo info)
explicitprotected

Definition at line 262 of file IoAbstractLoader.cpp.

Member Function Documentation

◆ _postProcess()

void IoAbstractLoader::_postProcess ( ccHObject ioContainer)
protectedvirtual

Definition at line 340 of file IoAbstractLoader.cpp.

Referenced by loadFile().

◆ canSave()

bool IoAbstractLoader::canSave ( CV_CLASS_ENUM  type,
bool &  multiple,
bool &  exclusive 
) const
overridevirtual

Returns whether this I/O filter can save the specified type of entity.

Parameters
typeentity type
multiplewhether the filter can save multiple instances of this entity at once
exclusivewhether the filter can only save this type of entity if selected or if it can be mixed with other types
Returns
whether the entity type can be saved

Reimplemented from FileIOFilter.

Definition at line 265 of file IoAbstractLoader.cpp.

References type.

◆ loadFile()

CC_FILE_ERROR IoAbstractLoader::loadFile ( const QString &  filename,
ccHObject container,
FileIOFilter::LoadParameters parameters 
)
overridevirtual

Loads one or more entities from a file.

This method must be implemented by children classes.

Parameters
filenamefile to load
containercontainer to store loaded entities
parametersgeneric loading parameters
Returns
error

Reimplemented from FileIOFilter.

Definition at line 275 of file IoAbstractLoader.cpp.

References _postProcess(), CC_FERR_NO_ERROR, CC_FERR_READING, CVLog::Print(), and CVLog::Warning().


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