OpenWalnut  1.5.0dev
Classes | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
WMClusterDisplay Class Reference

Module offers several fiber selection and coloring options depending on a hierarchical clustering. More...

#include <WMClusterDisplay.h>

+ Inheritance diagram for WMClusterDisplay:
+ Collaboration diagram for WMClusterDisplay:

Classes

class  MainViewEventHandler
 Small event handler class to catch left mouse buttons clicks in the main view. More...
 

Public Member Functions

 WMClusterDisplay ()
 constructor More...
 
virtual ~WMClusterDisplay ()
 destructor More...
 
virtual const std::string getName () const
 Gives back the name of this module. More...
 
virtual const std::string getDescription () const
 Gives back a description of this module. More...
 
virtual std::shared_ptr< WModulefactory () const
 Due to the prototype design pattern used to build modules, this method returns a new instance of this method. More...
 
virtual const char ** getXPMIcon () const
 Get the icon for this module in XPM format. More...
 
- Public Member Functions inherited from WModule
 WModule ()
 Constructs a new WModule instance. More...
 
virtual ~WModule ()
 Destructor. More...
 
const InputConnectorListgetInputConnectors () const
 Gives back input connectors. More...
 
std::shared_ptr< WModuleInputConnectorgetInputConnector (std::string name)
 Finds the named connector for the module. More...
 
std::shared_ptr< WModuleInputConnectorfindInputConnector (std::string name)
 Finds the named connector for the module. More...
 
const OutputConnectorListgetOutputConnectors () const
 Gives back output connectors. More...
 
std::shared_ptr< WModuleOutputConnectorgetOutputConnector (std::string name)
 Finds the named connector for the module. More...
 
std::shared_ptr< WModuleOutputConnectorfindOutputConnector (std::string name)
 Finds the named connector for the module. More...
 
std::shared_ptr< WModuleConnectorgetConnector (std::string name)
 Finds the named connector for the module. More...
 
std::shared_ptr< WModuleConnectorfindConnector (std::string name)
 Finds the named connector for the module. More...
 
std::shared_ptr< WPropertiesgetProperties () const
 Return a pointer to the properties object of the module. More...
 
std::shared_ptr< WPropertiesgetInformationProperties () const
 Return a pointer to the information properties object of the module. More...
 
const WBoolFlagisInitialized () const
 Determines whether the module instance is properly initialized. More...
 
const WBoolFlagisUseable () const
 Checks whether the module instance is ready to be used. More...
 
const WBoolFlagisAssociated () const
 Checks whether this module is associated with an container. More...
 
const WBoolFlagisReady () const
 Checks whether this module is ready. More...
 
const WBoolFlagisReadyOrCrashed () const
 This is the logical or of isReady and isCrashed. More...
 
const WBoolFlagisRunning () const
 Returns a flag denoting whether the thread currently is running or nor. More...
 
void waitRestored ()
 This method waits for the module to be restored completely. More...
 
bool isRestoreNeeded () const
 Check whether this module is in restore mode. More...
 
void setRestoreNeeded (bool restore=true)
 Change the restore mode. More...
 
void reportRestoreComplete ()
 Called by loaders to tell the module that loading has been completed. More...
 
std::shared_ptr< WModuleContainergetAssociatedContainer () const
 The container this module is associated with. More...
 
virtual boost::signals2::connection subscribeSignal (MODULE_SIGNAL signal, t_ModuleGenericSignalHandlerType notifier)
 Connects a specified notify function with a signal this module instance is offering. More...
 
virtual boost::signals2::connection subscribeSignal (MODULE_SIGNAL signal, t_ModuleErrorSignalHandlerType notifier)
 Connects a specified notify function with a signal this module instance is offering. More...
 
virtual std::shared_ptr< WProgressCombinergetRootProgressCombiner ()
 Gets the modules base progress. More...
 
virtual MODULE_TYPE getType () const
 Gets the type of the module. More...
 
void disconnect ()
 Completely disconnects all connected connectors of this module. More...
 
WCombinerTypes::WDisconnectList getPossibleDisconnections ()
 Gives a list of all WDisconnectCombiners possible. More...
 
boost::filesystem::path getLocalPath () const
 Returns the local path of the module. More...
 
boost::filesystem::path getLibPath () const
 Returns the absolute path to the library containing this module. More...
 
std::string getPackageName () const
 Returns the name of the package the module belongs to, The package name basically is the name of the library containing this and maybe other modules. More...
 
bool isDeprecated () const
 Checks whether the module was marked as deprecated. More...
 
std::string getDeprecationMessage () const
 Queries the deprecation message of a module if specified. More...
 
virtual WModuleMetaInformation::ConstSPtr getMetaInformation () const
 The meta information of this module. More...
 
const std::string & getUUID () const
 Get the UUID of the module instance. More...
 
WPropString getRuntimeName () const
 Returns the name the user has given this module. More...
 
const WRequirementcheckRequirements () const
 This method checks whether all the requirements of the module are complied. More...
 
virtual boost::signals2::connection subscribeSignal (THREAD_SIGNAL signal, t_ThreadErrorSignalHandlerType notifier)
 Connects a specified notify function with a signal this thread instance is offering. More...
 
- Public Member Functions inherited from WThreadedRunner
 WThreadedRunner ()
 Default constructor. More...
 
virtual ~WThreadedRunner ()
 Destructor. More...
 
virtual void run ()
 Run thread. More...
 
void run (THREADFUNCTION f)
 Run thread. More...
 
void wait (bool requestFinish=false)
 Wait for the thread to be finished. More...
 
virtual void requestStop ()
 This method's purpose is to request a stop without waiting for it. More...
 
virtual boost::signals2::connection subscribeSignal (THREAD_SIGNAL signal, t_ThreadErrorSignalHandlerType notifier)
 Connects a specified notify function with a signal this thread instance is offering. More...
 
const WBoolFlagisCrashed () const
 Checks whether this thread has been crashed. More...
 
const std::string & getCrashMessage () const
 Get the message of the exception finally causing the crash. More...
 
void setThreadName (std::string name)
 Set the name of the thread. More...
 
std::string getThreadName () const
 Returns the current thread name. More...
 
- Public Member Functions inherited from WPrototyped
 WPrototyped ()
 Default constructor. More...
 
virtual ~WPrototyped ()
 Destructor. More...
 
template<typename T >
bool isA ()
 Checks whether the actual prototype has the specified runtime type. More...
 

Protected Member Functions

virtual void moduleMain ()
 Entry point after loading the module. More...
 
virtual void connectors ()
 Initialize the connectors this module is using. More...
 
virtual void properties ()
 Initialize the properties for this module. More...
 
- Protected Member Functions inherited from WModule
void threadMain ()
 Thread entry point. More...
 
virtual void onThreadException (const WException &e)
 This method is called if an exception was caught, which came from the custom thread code. More...
 
void setAssociatedContainer (std::shared_ptr< WModuleContainer > container)
 Sets the container this module is associated with. More...
 
virtual void requirements ()
 Initialize requirements in this function. More...
 
virtual std::string deprecated () const
 This function allows module programmers to mark their modules deprecated in a user-friendly way. More...
 
void initialize ()
 Manages initialization. More...
 
virtual void cleanup ()
 Called whenever the module should shutdown. More...
 
void addConnector (std::shared_ptr< WModuleInputConnector > con)
 Adds the specified connector to the list of inputs. More...
 
void addConnector (std::shared_ptr< WModuleOutputConnector > con)
 Adds the specified connector to the list of outputs. More...
 
void removeConnectors ()
 Removes all connectors properly. More...
 
virtual void activate ()
 Callback for m_active. More...
 
virtual const t_GenericSignalHandlerType getSignalHandler (MODULE_CONNECTOR_SIGNAL signal)
 Gives the signal handler function responsible for a given signal. More...
 
virtual void notifyConnectionEstablished (std::shared_ptr< WModuleConnector > here, std::shared_ptr< WModuleConnector > there)
 Gets called whenever a connector gets connected to the specified input. More...
 
virtual void notifyConnectionClosed (std::shared_ptr< WModuleConnector > here, std::shared_ptr< WModuleConnector > there)
 Gets called whenever a connection between a remote and local connector gets closed. More...
 
virtual void notifyDataChange (std::shared_ptr< WModuleConnector > input, std::shared_ptr< WModuleConnector > output)
 Gets called when the data on one input connector changed. More...
 
void ready ()
 Call this whenever your module is ready and can react on property changes. More...
 
wlog::WStreamedLogger infoLog () const
 Logger instance for comfortable info logging. More...
 
wlog::WStreamedLogger debugLog () const
 Logger instance for comfortable debug logging. More...
 
wlog::WStreamedLogger warnLog () const
 Logger instance for comfortable warning- logs. More...
 
wlog::WStreamedLogger errorLog () const
 Logger instance for comfortable error logging. More...
 
void setLocalPath (boost::filesystem::path path)
 Sets the local module path. More...
 
void setLibPath (boost::filesystem::path path)
 Set the path to the library which contains this module. More...
 
void setPackageName (std::string name)
 Set the package name. More...
 
- Protected Member Functions inherited from WThreadedRunner
virtual void notifyStop ()
 Gets called when the thread should be stopped. More...
 
void yield () const
 Give remaining execution timeslice to another thread. More...
 
void sleep (const int32_t t) const
 Sets thread asleep. More...
 
void msleep (const int32_t t) const
 Sets thread asleep. More...
 
void waitForStop ()
 Let the thread sleep until a stop request was given. More...
 
void handleDeadlyException (const WException &e, std::string sender="WThreadedRunner")
 Handle the specified exception which was not caught in the thread, which basically means the thread has crashed. More...
 

Private Member Functions

std::vector< std::string > readFile (const std::string fileName)
 helper function to read a text file More...
 
bool loadTreeAscii (std::string fileName)
 helper function to load and parse a tree file, the tree is stored in the member variable m_tree More...
 
void initWidgets ()
 inits the cluster navigation widgets More...
 
void updateWidgets ()
 updates all the overlay widgets within the osg thread More...
 
bool widgetClicked ()
 function checks all on screen buttons if they have been clicked More...
 
void colorClusters (size_t current)
 colors subclusters depending on slider settings More...
 
void setColor (std::vector< size_t > clusters, WColor color)
 sets a set of cluster to a single color More...
 
void handleSelectedClusterChanged ()
 function to handle user input More...
 
void handleOffsetChanged ()
 function to handle user input More...
 
void handleSelectedLevelChanged ()
 function to handle user input More...
 
void handleBiggestClustersChanged ()
 function to handle user input More...
 
void handleColoringChanged ()
 function to handle user input More...
 
void handleMinSizeChanged ()
 function to handle user input More...
 
void handleRoiChanged ()
 function to handle user input More...
 
void handleCreateRoi ()
 function to handle user input More...
 
std::string createLabel (size_t id)
 creates a label depending ont he current labeling setting More...
 
bool dendrogramClick (const WVector2f &pos)
 handles clicks into the dendrogram More...
 
void createFiberGeode ()
 helper function to initialize a fiber display node More...
 

Private Attributes

std::shared_ptr< WModuleInputData< const WDataSetFibers > > m_fiberInput
 Input connector for a fiber dataset. More...
 
std::shared_ptr< const WDataSetFibersm_dataSet
 pointer to dataSet to be able to access it throughout the whole module. More...
 
std::shared_ptr< WConditionm_propCondition
 A condition used to notify about changes in several properties. More...
 
WPropInt m_propSelectedCluster
 the currently selected cluster More...
 
WPropInt m_propSelectedClusterOffset
 offset to the currently selected cluster, this allows tree navigation and return to the current cluster More...
 
WPropInt m_propSubClusters
 number of biggest sub cluster to determine and show More...
 
WPropInt m_propSubLevelsToColor
 number of subclusters to color differently More...
 
WPropInt m_propMinSizeToColor
 specifies a minimum size for a cluster so that too small cluster won't get an own color More...
 
WPropInt m_propMaxSubClusters
 number of clusters that are selected by the current roi setting and meet the ratio condition More...
 
WPropDouble m_propBoxClusterRatio
 ratio of how many leafes of a cluster must be inside the roi setting to be considered More...
 
WPropBool m_propShowTree
 controls the display of the tree navigation widget More...
 
WPropGroup m_groupDendrogram
 grouping the dendrogram manipulation properties More...
 
WPropBool m_propShowDendrogram
 controls the display of the dendrogram overlay More...
 
WPropBool m_propResizeWithWindow
 if true position and size sliders will have no effect More...
 
WPropInt m_propDendrogramSizeX
 controls the width of the dendrogram More...
 
WPropInt m_propDendrogramSizeY
 controls the height of the dendrogram More...
 
WPropInt m_propDendrogramOffsetX
 controls the horizontal origin of the dendrogram More...
 
WPropInt m_propDendrogramOffsetY
 controls the vertical origin of the dendrogram More...
 
WPropTrigger m_readTriggerProp
 This property triggers the actual reading,. More...
 
WPropFilename m_propTreeFile
 The tree will be read from this file, i hope we will get a real load button some time. More...
 
WHierarchicalTreeFibers m_tree
 stores the tree object More...
 
std::shared_ptr< WFiberSelectorm_fiberSelector
 Point to a fiber selector, which is an adapater between the roi manager and the this module. More...
 
osg::ref_ptr< WFiberDrawablem_fiberDrawable
 stores pointer to the fiber drawer More...
 
osg::ref_ptr< WGEManagedGroupNodem_rootNode
 The root node used for this modules graphics. More...
 
std::vector< size_t > m_biggestClusters
 stores the currently selected biggest clusters More...
 
std::vector< osg::ref_ptr< WOSGButton > > m_treeButtonList
 list of buttons for the tree widget More...
 
std::vector< osg::ref_ptr< WOSGButton > > m_biggestClustersButtonList
 list of buttons for biggest cluster selection More...
 
WGECameram_camera
 stores the camera object More...
 
WDendrogramGeodem_dendrogramGeode
 stores the dendrogram geode More...
 
osgWidget::WindowManager * m_wm
 stores a pointer to the window manager used for osg wdgets and overlay stuff More...
 
bool m_widgetDirty
 true if the widgets need redrawing More...
 
bool m_biggestClusterButtonsChanged
 true if the buttons for the biggest clusters need updating More...
 
bool m_dendrogramDirty
 true if the dendrogram needs redrawing More...
 
size_t m_rootCluster
 currently selected cluster + offset More...
 
size_t m_labelMode
 indicates wheter the cluster number, size of custom data should be shown on labels More...
 
int m_oldViewHeight
 stores the old viewport resolution to check whether a resize happened More...
 
int m_oldViewWidth
 stores the old viewport resolution to check whether a resize happened More...
 

Additional Inherited Members

- Public Types inherited from WModule
typedef std::vector< std::shared_ptr< WModuleInputConnector > > InputConnectorList
 The type for the list of input connectors. More...
 
typedef std::vector< std::shared_ptr< WModuleOutputConnector > > OutputConnectorList
 The type for the list of output connectors. More...
 
typedef std::shared_ptr< WModuleSPtr
 Shared pointer to a WModule. More...
 
typedef std::shared_ptr< const WModuleConstSPtr
 Shared pointer to a const WModule. More...
 
- Public Types inherited from WThreadedRunner
typedef std::shared_ptr< WThreadedRunnerSPtr
 Abbreviation to a shared_ptr to this type. More...
 
typedef std::shared_ptr< const WThreadedRunnerConstSPtr
 Abbreviation to a const shared_ptr to this type. More...
 
typedef boost::function< void(void) > THREADFUNCTION
 Type used for simple thread functions. More...
 
- Static Public Member Functions inherited from WModule
static SPtr findByUUID (std::string uuid)
 Find a module instance by UUID. More...
 
- Static Public Member Functions inherited from WThreadedRunner
static void setThisThreadName (std::string name)
 Static function to set the name of the calling thread. More...
 
- Protected Types inherited from WModule
typedef std::vector< WRequirement * > Requirements
 The type of the requirement list. More...
 
- Protected Attributes inherited from WModule
std::shared_ptr< WPropertiesm_properties
 The property object for the module. More...
 
std::shared_ptr< WPropertiesm_infoProperties
 The property object for the module containing only module whose purpose is "PV_PURPOSE_INFORMNATION". More...
 
std::shared_ptr< WProgressCombinerm_progress
 Progress indicator used as parent for all progress' of this module. More...
 
WBoolFlag m_initialized
 True if everything is initialized and ready to be used. More...
 
WBoolFlag m_isAssociated
 True if container got associated with this flag. More...
 
WBoolFlag m_isUsable
 True if associated && initialized. More...
 
WBoolFlag m_isReady
 True if ready() was called. More...
 
WBoolFlag m_isReadyOrCrashed
 It is true whenever m_isReady or WThreadedRunner::m_isCrashed is true. More...
 
WBoolFlag m_isRunning
 True if the module currently is running. More...
 
WBoolFlag m_isLoadFinished
 Flag to denote whether the module container and the project loader have finished their work. More...
 
bool m_restoreMode
 Flag denoting the current restore mode. More...
 
std::shared_ptr< WProgressm_readyProgress
 Progress indicator for the "ready" state. More...
 
WConditionSet m_moduleState
 The internal state of the module. More...
 
std::shared_ptr< WModuleContainerm_container
 The container this module belongs to. More...
 
InputConnectorList m_inputConnectors
 Set of input connectors associated with this module. More...
 
OutputConnectorList m_outputConnectors
 Set of output connectors associated with this module. More...
 
WPropBool m_active
 True whenever the module should be active. More...
 
WPropString m_runtimeName
 This property holds a user specified name for the current module instance. More...
 
boost::filesystem::path m_localPath
 The path where the module binary resides in. More...
 
boost::filesystem::path m_libPath
 The absolute path to the library containing this module. More...
 
std::string m_packageName
 The name of the lib/the package containing this module. More...
 
Requirements m_requirements
 The list of requirements. More...
 
- Protected Attributes inherited from WThreadedRunner
boost::thread m_thread
 Thread instance. More...
 
WBoolFlag m_shutdownFlag
 Condition getting fired whenever the thread should quit. More...
 
WBoolFlag m_isCrashed
 True whenever an exception is thrown during threadMain. More...
 
std::string m_crashMessage
 The crash message. More...
 

Detailed Description

Module offers several fiber selection and coloring options depending on a hierarchical clustering.

Definition at line 55 of file WMClusterDisplay.h.

Constructor & Destructor Documentation

◆ WMClusterDisplay()

WMClusterDisplay::WMClusterDisplay ( )

constructor

Definition at line 69 of file WMClusterDisplay.cpp.

Referenced by factory().

+ Here is the caller graph for this function:

◆ ~WMClusterDisplay()

WMClusterDisplay::~WMClusterDisplay ( )
virtual

destructor

Definition at line 78 of file WMClusterDisplay.cpp.

Member Function Documentation

◆ colorClusters()

void WMClusterDisplay::colorClusters ( size_t  current)
private

◆ connectors()

void WMClusterDisplay::connectors ( )
protectedvirtual

Initialize the connectors this module is using.

Reimplemented from WModule.

Definition at line 106 of file WMClusterDisplay.cpp.

References WModule::addConnector(), WModule::connectors(), and m_fiberInput.

+ Here is the call graph for this function:

◆ createFiberGeode()

void WMClusterDisplay::createFiberGeode ( )
private

helper function to initialize a fiber display node

Definition at line 1000 of file WMClusterDisplay.cpp.

References m_dataSet, m_fiberDrawable, m_fiberSelector, and m_rootNode.

Referenced by moduleMain().

+ Here is the caller graph for this function:

◆ createLabel()

std::string WMClusterDisplay::createLabel ( size_t  id)
private

creates a label depending ont he current labeling setting

Parameters
idof the cluster to create the label for
Returns
string of the label

Definition at line 807 of file WMClusterDisplay.cpp.

References WHierarchicalTree::getCustomData(), m_labelMode, m_tree, WHierarchicalTree::size(), and string_utils::toString().

Referenced by updateWidgets().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dendrogramClick()

bool WMClusterDisplay::dendrogramClick ( const WVector2f pos)
private

handles clicks into the dendrogram

Parameters
posthe mouse position during the click
Returns
true if it handled the click

Definition at line 988 of file WMClusterDisplay.cpp.

References WDendrogramGeode::getClickedCluster(), WDendrogramGeode::inDendrogramArea(), m_dendrogramGeode, and m_propSelectedCluster.

Referenced by moduleMain().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ factory()

std::shared_ptr< WModule > WMClusterDisplay::factory ( ) const
virtual

Due to the prototype design pattern used to build modules, this method returns a new instance of this method.

NOTE: it should never be initialized or modified in some other way. A simple new instance is required.

Returns
the prototype used to create every module in OpenWalnut.

Implements WModule.

Definition at line 83 of file WMClusterDisplay.cpp.

References WMClusterDisplay().

+ Here is the call graph for this function:

◆ getDescription()

const std::string WMClusterDisplay::getDescription ( ) const
virtual

Gives back a description of this module.

Returns
description to module.

Implements WPrototyped.

Definition at line 98 of file WMClusterDisplay.cpp.

◆ getName()

const std::string WMClusterDisplay::getName ( ) const
virtual

Gives back the name of this module.

Returns
the module's name.

Implements WPrototyped.

Definition at line 93 of file WMClusterDisplay.cpp.

◆ getXPMIcon()

const char ** WMClusterDisplay::getXPMIcon ( ) const
virtual

Get the icon for this module in XPM format.

Returns
The icon.

Reimplemented from WModule.

Definition at line 89 of file WMClusterDisplay.cpp.

◆ handleBiggestClustersChanged()

void WMClusterDisplay::handleBiggestClustersChanged ( )
private

◆ handleColoringChanged()

void WMClusterDisplay::handleColoringChanged ( )
private

function to handle user input

Definition at line 621 of file WMClusterDisplay.cpp.

References colorClusters(), m_dendrogramDirty, m_propMinSizeToColor, m_propSelectedCluster, and m_propSubLevelsToColor.

Referenced by moduleMain().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ handleCreateRoi()

void WMClusterDisplay::handleCreateRoi ( )
private

function to handle user input

◆ handleMinSizeChanged()

void WMClusterDisplay::handleMinSizeChanged ( )
private

function to handle user input

Definition at line 629 of file WMClusterDisplay.cpp.

References m_dendrogramDirty.

Referenced by moduleMain().

+ Here is the caller graph for this function:

◆ handleOffsetChanged()

void WMClusterDisplay::handleOffsetChanged ( )
private

function to handle user input

Definition at line 550 of file WMClusterDisplay.cpp.

References WHierarchicalTree::getChildren(), WHierarchicalTree::getLevel(), WHierarchicalTree::getParent(), m_dendrogramDirty, m_propSelectedCluster, m_propSelectedClusterOffset, m_propSubLevelsToColor, m_rootCluster, m_tree, and WHierarchicalTree::size().

Referenced by moduleMain().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ handleRoiChanged()

void WMClusterDisplay::handleRoiChanged ( )
private

◆ handleSelectedClusterChanged()

void WMClusterDisplay::handleSelectedClusterChanged ( )
private

◆ handleSelectedLevelChanged()

void WMClusterDisplay::handleSelectedLevelChanged ( )
private

function to handle user input

◆ initWidgets()

void WMClusterDisplay::initWidgets ( )
private

inits the cluster navigation widgets

Definition at line 236 of file WMClusterDisplay.cpp.

References WKernel::getGraphicsEngine(), WKernel::getRunningKernel(), WModule::m_active, m_camera, m_oldViewHeight, m_oldViewWidth, m_rootNode, m_treeButtonList, m_wm, and updateWidgets().

Referenced by moduleMain().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ loadTreeAscii()

bool WMClusterDisplay::loadTreeAscii ( std::string  fileName)
private

helper function to load and parse a tree file, the tree is stored in the member variable m_tree

Parameters
fileName
Returns
true if successful.

Definition at line 151 of file WMClusterDisplay.cpp.

References WHierarchicalTreeFibers::addCluster(), WHierarchicalTreeFibers::addLeaf(), WModule::debugLog(), WHierarchicalTree::getClusterCount(), WHierarchicalTree::getLeafCount(), m_fiberInput, m_tree, and readFile().

Referenced by moduleMain().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ moduleMain()

void WMClusterDisplay::moduleMain ( )
protectedvirtual

◆ properties()

void WMClusterDisplay::properties ( )
protectedvirtual

◆ readFile()

std::vector< std::string > WMClusterDisplay::readFile ( const std::string  fileName)
private

helper function to read a text file

Parameters
fileName
Returns
string containing the file

Definition at line 118 of file WMClusterDisplay.cpp.

References WModule::debugLog().

Referenced by loadTreeAscii().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setColor()

void WMClusterDisplay::setColor ( std::vector< size_t >  clusters,
WColor  color 
)
private

sets a set of cluster to a single color

Parameters
clustersvector of clusters
colornew color

Definition at line 969 of file WMClusterDisplay.cpp.

References m_dataSet, and m_fiberSelector.

Referenced by colorClusters(), handleBiggestClustersChanged(), and handleRoiChanged().

+ Here is the caller graph for this function:

◆ updateWidgets()

void WMClusterDisplay::updateWidgets ( )
private

◆ widgetClicked()

bool WMClusterDisplay::widgetClicked ( )
private

function checks all on screen buttons if they have been clicked

Returns
true if a button was clicked

Definition at line 822 of file WMClusterDisplay.cpp.

References WHierarchicalTree::getLevel(), WHierarchicalTree::getMaxLevel(), WHierarchicalTreeFibers::getOutputBitfield(), m_biggestClustersButtonList, m_fiberDrawable, m_labelMode, m_propSelectedCluster, m_propSelectedClusterOffset, m_rootCluster, m_tree, and m_treeButtonList.

Referenced by updateWidgets().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_biggestClusterButtonsChanged

bool WMClusterDisplay::m_biggestClusterButtonsChanged
private

true if the buttons for the biggest clusters need updating

Definition at line 368 of file WMClusterDisplay.h.

Referenced by colorClusters(), handleBiggestClustersChanged(), handleRoiChanged(), and updateWidgets().

◆ m_biggestClusters

std::vector<size_t> WMClusterDisplay::m_biggestClusters
private

stores the currently selected biggest clusters

Definition at line 348 of file WMClusterDisplay.h.

Referenced by colorClusters(), handleBiggestClustersChanged(), handleRoiChanged(), handleSelectedClusterChanged(), and updateWidgets().

◆ m_biggestClustersButtonList

std::vector< osg::ref_ptr<WOSGButton> > WMClusterDisplay::m_biggestClustersButtonList
private

list of buttons for biggest cluster selection

Definition at line 358 of file WMClusterDisplay.h.

Referenced by updateWidgets(), and widgetClicked().

◆ m_camera

WGECamera* WMClusterDisplay::m_camera
private

stores the camera object

Definition at line 360 of file WMClusterDisplay.h.

Referenced by initWidgets(), moduleMain(), and updateWidgets().

◆ m_dataSet

std::shared_ptr< const WDataSetFibers > WMClusterDisplay::m_dataSet
private

pointer to dataSet to be able to access it throughout the whole module.

Definition at line 256 of file WMClusterDisplay.h.

Referenced by createFiberGeode(), moduleMain(), and setColor().

◆ m_dendrogramDirty

bool WMClusterDisplay::m_dendrogramDirty
private

◆ m_dendrogramGeode

WDendrogramGeode* WMClusterDisplay::m_dendrogramGeode
private

stores the dendrogram geode

Definition at line 362 of file WMClusterDisplay.h.

Referenced by dendrogramClick(), moduleMain(), and updateWidgets().

◆ m_fiberDrawable

osg::ref_ptr< WFiberDrawable > WMClusterDisplay::m_fiberDrawable
private

◆ m_fiberInput

std::shared_ptr< WModuleInputData< const WDataSetFibers > > WMClusterDisplay::m_fiberInput
private

Input connector for a fiber dataset.

Definition at line 254 of file WMClusterDisplay.h.

Referenced by connectors(), loadTreeAscii(), and moduleMain().

◆ m_fiberSelector

std::shared_ptr< WFiberSelector> WMClusterDisplay::m_fiberSelector
private

Point to a fiber selector, which is an adapater between the roi manager and the this module.

Definition at line 336 of file WMClusterDisplay.h.

Referenced by createFiberGeode(), moduleMain(), and setColor().

◆ m_groupDendrogram

WPropGroup WMClusterDisplay::m_groupDendrogram
private

grouping the dendrogram manipulation properties

Definition at line 307 of file WMClusterDisplay.h.

Referenced by properties().

◆ m_labelMode

size_t WMClusterDisplay::m_labelMode
private

indicates wheter the cluster number, size of custom data should be shown on labels

Definition at line 374 of file WMClusterDisplay.h.

Referenced by createLabel(), and widgetClicked().

◆ m_oldViewHeight

int WMClusterDisplay::m_oldViewHeight
private

stores the old viewport resolution to check whether a resize happened

Definition at line 376 of file WMClusterDisplay.h.

Referenced by initWidgets(), and updateWidgets().

◆ m_oldViewWidth

int WMClusterDisplay::m_oldViewWidth
private

stores the old viewport resolution to check whether a resize happened

Definition at line 378 of file WMClusterDisplay.h.

Referenced by initWidgets(), and updateWidgets().

◆ m_propBoxClusterRatio

WPropDouble WMClusterDisplay::m_propBoxClusterRatio
private

ratio of how many leafes of a cluster must be inside the roi setting to be considered

Definition at line 297 of file WMClusterDisplay.h.

Referenced by handleRoiChanged(), moduleMain(), and properties().

◆ m_propCondition

std::shared_ptr< WCondition > WMClusterDisplay::m_propCondition
private

A condition used to notify about changes in several properties.

Definition at line 261 of file WMClusterDisplay.h.

Referenced by moduleMain(), and properties().

◆ m_propDendrogramOffsetX

WPropInt WMClusterDisplay::m_propDendrogramOffsetX
private

controls the horizontal origin of the dendrogram

Definition at line 321 of file WMClusterDisplay.h.

Referenced by moduleMain(), properties(), and updateWidgets().

◆ m_propDendrogramOffsetY

WPropInt WMClusterDisplay::m_propDendrogramOffsetY
private

controls the vertical origin of the dendrogram

Definition at line 322 of file WMClusterDisplay.h.

Referenced by moduleMain(), properties(), and updateWidgets().

◆ m_propDendrogramSizeX

WPropInt WMClusterDisplay::m_propDendrogramSizeX
private

controls the width of the dendrogram

Definition at line 319 of file WMClusterDisplay.h.

Referenced by moduleMain(), properties(), and updateWidgets().

◆ m_propDendrogramSizeY

WPropInt WMClusterDisplay::m_propDendrogramSizeY
private

controls the height of the dendrogram

Definition at line 320 of file WMClusterDisplay.h.

Referenced by moduleMain(), properties(), and updateWidgets().

◆ m_propMaxSubClusters

WPropInt WMClusterDisplay::m_propMaxSubClusters
private

number of clusters that are selected by the current roi setting and meet the ratio condition

Definition at line 292 of file WMClusterDisplay.h.

Referenced by handleRoiChanged(), moduleMain(), and properties().

◆ m_propMinSizeToColor

WPropInt WMClusterDisplay::m_propMinSizeToColor
private

specifies a minimum size for a cluster so that too small cluster won't get an own color

Definition at line 287 of file WMClusterDisplay.h.

Referenced by colorClusters(), handleBiggestClustersChanged(), handleColoringChanged(), handleSelectedClusterChanged(), moduleMain(), properties(), and updateWidgets().

◆ m_propResizeWithWindow

WPropBool WMClusterDisplay::m_propResizeWithWindow
private

if true position and size sliders will have no effect

Definition at line 317 of file WMClusterDisplay.h.

Referenced by moduleMain(), properties(), and updateWidgets().

◆ m_propSelectedCluster

WPropInt WMClusterDisplay::m_propSelectedCluster
private

◆ m_propSelectedClusterOffset

WPropInt WMClusterDisplay::m_propSelectedClusterOffset
private

offset to the currently selected cluster, this allows tree navigation and return to the current cluster

Definition at line 272 of file WMClusterDisplay.h.

Referenced by handleOffsetChanged(), handleSelectedClusterChanged(), moduleMain(), properties(), and widgetClicked().

◆ m_propShowDendrogram

WPropBool WMClusterDisplay::m_propShowDendrogram
private

controls the display of the dendrogram overlay

Definition at line 312 of file WMClusterDisplay.h.

Referenced by moduleMain(), properties(), and updateWidgets().

◆ m_propShowTree

WPropBool WMClusterDisplay::m_propShowTree
private

controls the display of the tree navigation widget

Definition at line 302 of file WMClusterDisplay.h.

Referenced by moduleMain(), properties(), and updateWidgets().

◆ m_propSubClusters

WPropInt WMClusterDisplay::m_propSubClusters
private

number of biggest sub cluster to determine and show

Definition at line 277 of file WMClusterDisplay.h.

Referenced by handleBiggestClustersChanged(), moduleMain(), and properties().

◆ m_propSubLevelsToColor

WPropInt WMClusterDisplay::m_propSubLevelsToColor
private

number of subclusters to color differently

Definition at line 282 of file WMClusterDisplay.h.

Referenced by colorClusters(), handleColoringChanged(), handleOffsetChanged(), handleSelectedClusterChanged(), moduleMain(), and properties().

◆ m_propTreeFile

WPropFilename WMClusterDisplay::m_propTreeFile
private

The tree will be read from this file, i hope we will get a real load button some time.

Definition at line 326 of file WMClusterDisplay.h.

Referenced by moduleMain(), and properties().

◆ m_readTriggerProp

WPropTrigger WMClusterDisplay::m_readTriggerProp
private

This property triggers the actual reading,.

Definition at line 325 of file WMClusterDisplay.h.

Referenced by moduleMain(), and properties().

◆ m_rootCluster

size_t WMClusterDisplay::m_rootCluster
private

◆ m_rootNode

osg::ref_ptr< WGEManagedGroupNode > WMClusterDisplay::m_rootNode
private

The root node used for this modules graphics.

Definition at line 346 of file WMClusterDisplay.h.

Referenced by createFiberGeode(), initWidgets(), and moduleMain().

◆ m_tree

WHierarchicalTreeFibers WMClusterDisplay::m_tree
private

◆ m_treeButtonList

std::vector< osg::ref_ptr<WOSGButton> > WMClusterDisplay::m_treeButtonList
private

list of buttons for the tree widget

Definition at line 353 of file WMClusterDisplay.h.

Referenced by initWidgets(), updateWidgets(), and widgetClicked().

◆ m_widgetDirty

bool WMClusterDisplay::m_widgetDirty
private

true if the widgets need redrawing

Definition at line 366 of file WMClusterDisplay.h.

Referenced by handleBiggestClustersChanged(), handleRoiChanged(), moduleMain(), and updateWidgets().

◆ m_wm

osgWidget::WindowManager* WMClusterDisplay::m_wm
private

stores a pointer to the window manager used for osg wdgets and overlay stuff

Definition at line 364 of file WMClusterDisplay.h.

Referenced by initWidgets(), and updateWidgets().


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