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

PDMS .mac file I/O filter. More...

#include <PDMSFilter.h>

Inheritance diagram for PDMSFilter:
Collaboration diagram for PDMSFilter:

Public Member Functions

 PDMSFilter ()
 
virtual CC_FILE_ERROR loadFile (const QString &filename, ccHObject &container, LoadParameters &parameters) 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 bool canSave (CV_CLASS_ENUM type, bool &multiple, bool &exclusive) const
 Returns whether this I/O filter can save the specified type of entity. More...
 
virtual void unregister ()
 Called when the filter is unregistered. More...
 

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...
 
- 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)
 
- Static Protected Attributes inherited from FileIOFilter
static constexpr float DEFAULT_PRIORITY = 25.0f
 

Detailed Description

PDMS .mac file I/O filter.

Definition at line 13 of file PDMSFilter.h.

Constructor & Destructor Documentation

◆ PDMSFilter()

PDMSFilter::PDMSFilter ( )

Definition at line 29 of file PDMSFilter.cpp.

References FileIOFilter::DEFAULT_PRIORITY, and FileIOFilter::Import.

Member Function Documentation

◆ loadFile()

CC_FILE_ERROR PDMSFilter::loadFile ( const QString &  filename,
ccHObject container,
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

M_PI/180.0

M_PI/180.0

Reimplemented from FileIOFilter.

Definition at line 36 of file PDMSFilter.cpp.

References PdmsTools::PdmsObjects::CTorus::angle, ccHObject::applyGLTransformation_recursive(), CC_FERR_MALFORMED_FILE, CC_FERR_NO_ERROR, count, PdmsTools::PdmsObjects::Cone::dbottom, PdmsTools::PdmsObjects::SCylinder::diameter, PdmsTools::PdmsObjects::Dish::diameter, PdmsTools::PdmsObjects::Cone::dtop, PdmsTools::PdmsObjects::GroupElement::elements, filename, ccGLMatrixTpl< T >::getColumn(), PdmsParser::getLoadedObject(), PdmsTools::PdmsObjects::SCylinder::height, PdmsTools::PdmsObjects::RTorus::height, PdmsTools::PdmsObjects::Dish::height, PdmsTools::PdmsObjects::Cone::height, PdmsTools::PdmsObjects::Extrusion::height, PdmsTools::PdmsObjects::CTorus::inside_radius, PdmsTools::PdmsObjects::Box::lengths, PdmsParser::linkWithSession(), PdmsTools::PdmsObjects::Loop::loop, PdmsTools::PdmsObjects::Extrusion::loop, PdmsTools::PdmsObjects::GenericItem::name, PdmsTools::PdmsObjects::CTorus::outside_radius, PdmsParser::parseSessionContent(), PdmsTools::PDMS_BOX, PdmsTools::PDMS_CONE, PdmsTools::PDMS_CTORUS, PdmsTools::PDMS_DISH, PdmsTools::PDMS_EXTRU, PdmsTools::PDMS_LOOP, PdmsTools::PDMS_NBOX, PdmsTools::PDMS_NEXTRU, PdmsTools::PDMS_PYRAMID, PdmsTools::PDMS_RTORUS, PdmsTools::PDMS_SCYLINDER, PdmsTools::PDMS_SNOUT, PdmsTools::PDMS_VERTEX, profile, PdmsTools::PdmsObjects::Dish::radius, ccDrawableObject::setGLTransformation(), ccGLMatrixTpl< T >::setTranslation(), ccDrawableObject::setVisible(), PdmsTools::PdmsObjects::GroupElement::subhierarchy, CVLog::Warning(), PdmsTools::PdmsObjects::Snout::xoff, and PdmsTools::PdmsObjects::Snout::yoff.


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