3D Forest
Software for analysis of Lidar data from forest environment.
Editor Class Reference

#include <Editor.hpp>

Public Types

enum  Type {
  TYPE_CLASSIFICATION , TYPE_CLIP_FILTER , TYPE_DATA_SET , TYPE_DESCRIPTOR ,
  TYPE_ELEVATION , TYPE_INTENSITY , TYPE_SEGMENT , TYPE_PROJECT_NAME ,
  TYPE_SETTINGS
}
 

Public Member Functions

 Editor ()
 
 ~Editor ()
 
void open (const std::string &path, const SettingsImport &settings=SettingsImport())
 
void saveProject (const std::string &path)
 
const std::string & projectPath () const
 
const std::string & projectName () const
 
bool unsavedChanges () const
 
void close ()
 
void applyFilters ()
 
const Datasetsdatasets () const
 
Datasetsdatasets ()
 
void setDatasets (const Datasets &datasets)
 
const QueryFilterSetdatasetsFilter () const
 
void setDatasetsFilter (const QueryFilterSet &filter)
 
const RegionclipFilter () const
 
void setClipFilter (const Region &clipFilter)
 
void resetClipFilter ()
 
Box< double > clipBoundary () const
 
const Box< double > & boundary () const
 
const Range< double > & elevationFilter () const
 
void setElevationFilter (const Range< double > &elevationFilter)
 
const Range< double > & descriptorFilter () const
 
void setDescriptorFilter (const Range< double > &descriptorFilter)
 
const Range< double > & intensityFilter () const
 
void setIntensityFilter (const Range< double > &intensityFilter)
 
const Classificationsclassifications () const
 
void setClassifications (const Classifications &classifications)
 
const QueryFilterSetclassificationsFilter () const
 
void setClassificationsFilter (const QueryFilterSet &filter)
 
const Segmentssegments () const
 
void setSegments (const Segments &segments)
 
const QueryFilterSetsegmentsFilter () const
 
void setSegmentsFilter (const QueryFilterSet &filter)
 
const Settingssettings () const
 
void setSettingsView (const SettingsView &settingsView)
 
void setSettingsUnits (const SettingsUnits &settingsUnits)
 
void addModifier (ModifierInterface *modifier)
 
void runModifiers (Page *page)
 
void viewportsResize (size_t n)
 
Viewportsviewports ()
 
const Viewportsviewports () const
 
std::shared_ptr< PageDatareadPage (size_t dataset, size_t index)
 
void erasePage (size_t dataset, size_t index)
 

Public Attributes

std::mutex mutex_
 

Protected Member Functions

void openProject (const std::string &path)
 
void openDataset (const std::string &path, const SettingsImport &settings=SettingsImport())
 
void setProjectPath (const std::string &projectPath)
 
void updateAfterSet ()
 
void updateAfterRead ()
 

Protected Attributes

std::string projectPath_
 
std::string projectName_
 
bool unsavedChanges_
 
Datasets datasets_
 
Dataset::Range datasetsRange_
 
Segments segments_
 
Settings settings_
 
Classifications classifications_
 
Region clipFilter_
 
Range< double > elevationFilter_
 
Range< double > descriptorFilter_
 
Range< double > intensityFilter_
 
QueryFilterSet classificationsFilter_
 
QueryFilterSet datasetsFilter_
 
QueryFilterSet segmentsFilter_
 
std::vector< ModifierInterface * > modifiers_
 
Viewports viewports_
 
PageManager pageManager_
 

Member Enumeration Documentation

◆ Type

Editor Data Type.

Enumerator
TYPE_CLASSIFICATION 
TYPE_CLIP_FILTER 
TYPE_DATA_SET 
TYPE_DESCRIPTOR 
TYPE_ELEVATION 
TYPE_INTENSITY 
TYPE_SEGMENT 
TYPE_PROJECT_NAME 
TYPE_SETTINGS 

Constructor & Destructor Documentation

◆ Editor()

Editor::Editor ( )

◆ ~Editor()

Editor::~Editor ( )

Member Function Documentation

◆ addModifier()

void Editor::addModifier ( ModifierInterface * modifier)

Referenced by MainWindow::loadPlugin().

◆ applyFilters()

void Editor::applyFilters ( )

◆ boundary()

const Box< double > & Editor::boundary ( ) const
inline

◆ classifications()

const Classifications & Editor::classifications ( ) const
inline

◆ classificationsFilter()

const QueryFilterSet & Editor::classificationsFilter ( ) const
inline

◆ clipBoundary()

◆ clipFilter()

◆ close()

void Editor::close ( )

◆ datasets() [1/2]

Datasets & Editor::datasets ( )
inline

◆ datasets() [2/2]

◆ datasetsFilter()

const QueryFilterSet & Editor::datasetsFilter ( ) const
inline

◆ descriptorFilter()

const Range< double > & Editor::descriptorFilter ( ) const
inline

◆ elevationFilter()

const Range< double > & Editor::elevationFilter ( ) const
inline

◆ erasePage()

void Editor::erasePage ( size_t dataset,
size_t index )

Referenced by Page::~Page().

◆ intensityFilter()

const Range< double > & Editor::intensityFilter ( ) const
inline

◆ open()

void Editor::open ( const std::string & path,
const SettingsImport & settings = SettingsImport() )

◆ openDataset()

void Editor::openDataset ( const std::string & path,
const SettingsImport & settings = SettingsImport() )
protected

Referenced by open().

◆ openProject()

void Editor::openProject ( const std::string & path)
protected

Referenced by open().

◆ projectName()

const std::string & Editor::projectName ( ) const
inline

◆ projectPath()

const std::string & Editor::projectPath ( ) const
inline

◆ readPage()

std::shared_ptr< PageData > Editor::readPage ( size_t dataset,
size_t index )

Referenced by Page::readPage().

◆ resetClipFilter()

void Editor::resetClipFilter ( )

◆ runModifiers()

void Editor::runModifiers ( Page * page)

Referenced by Page::runModifiers().

◆ saveProject()

void Editor::saveProject ( const std::string & path)

◆ segments()

◆ segmentsFilter()

◆ setClassifications()

void Editor::setClassifications ( const Classifications & classifications)

◆ setClassificationsFilter()

void Editor::setClassificationsFilter ( const QueryFilterSet & filter)

◆ setClipFilter()

void Editor::setClipFilter ( const Region & clipFilter)

◆ setDatasets()

void Editor::setDatasets ( const Datasets & datasets)

◆ setDatasetsFilter()

void Editor::setDatasetsFilter ( const QueryFilterSet & filter)

◆ setDescriptorFilter()

void Editor::setDescriptorFilter ( const Range< double > & descriptorFilter)

◆ setElevationFilter()

◆ setIntensityFilter()

void Editor::setIntensityFilter ( const Range< double > & intensityFilter)

◆ setProjectPath()

void Editor::setProjectPath ( const std::string & projectPath)
protected

Referenced by close(), openDataset(), and openProject().

◆ setSegments()

◆ setSegmentsFilter()

◆ setSettingsUnits()

void Editor::setSettingsUnits ( const SettingsUnits & settingsUnits)

◆ setSettingsView()

void Editor::setSettingsView ( const SettingsView & settingsView)

◆ settings()

◆ unsavedChanges()

bool Editor::unsavedChanges ( ) const
inline

◆ updateAfterRead()

void Editor::updateAfterRead ( )
protected

Referenced by openDataset(), and openProject().

◆ updateAfterSet()

void Editor::updateAfterSet ( )
protected

Referenced by setDatasets(), and updateAfterRead().

◆ viewports() [1/2]

◆ viewports() [2/2]

const Viewports & Editor::viewports ( ) const
inline

◆ viewportsResize()

void Editor::viewportsResize ( size_t n)

Member Data Documentation

◆ classifications_

Classifications Editor::classifications_
protected

Referenced by close(), and setClassifications().

◆ classificationsFilter_

QueryFilterSet Editor::classificationsFilter_
protected

◆ clipFilter_

◆ datasets_

◆ datasetsFilter_

QueryFilterSet Editor::datasetsFilter_
protected

◆ datasetsRange_

Dataset::Range Editor::datasetsRange_
protected

Referenced by updateAfterSet().

◆ descriptorFilter_

Range<double> Editor::descriptorFilter_
protected

◆ elevationFilter_

Range<double> Editor::elevationFilter_
protected

◆ intensityFilter_

Range<double> Editor::intensityFilter_
protected

◆ modifiers_

std::vector<ModifierInterface *> Editor::modifiers_
protected

Referenced by addModifier(), and runModifiers().

◆ mutex_

◆ pageManager_

PageManager Editor::pageManager_
protected

Referenced by erasePage(), and readPage().

◆ projectName_

std::string Editor::projectName_
protected

Referenced by close(), openProject(), and saveProject().

◆ projectPath_

std::string Editor::projectPath_
protected

◆ segments_

Segments Editor::segments_
protected

◆ segmentsFilter_

QueryFilterSet Editor::segmentsFilter_
protected

◆ settings_

Settings Editor::settings_
protected

◆ unsavedChanges_

◆ viewports_


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