OpenWalnut
1.5.0dev
|
A module that draws a histogram of one or mode scalar datasets in a custom widget. More...
#include <WMMultiHistogramView.h>
Public Member Functions | |
WMMultiHistogramView () | |
Constuctor. More... | |
virtual | ~WMMultiHistogramView () |
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< WModule > | factory () 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 InputConnectorList & | getInputConnectors () const |
Gives back input connectors. More... | |
std::shared_ptr< WModuleInputConnector > | getInputConnector (std::string name) |
Finds the named connector for the module. More... | |
std::shared_ptr< WModuleInputConnector > | findInputConnector (std::string name) |
Finds the named connector for the module. More... | |
const OutputConnectorList & | getOutputConnectors () const |
Gives back output connectors. More... | |
std::shared_ptr< WModuleOutputConnector > | getOutputConnector (std::string name) |
Finds the named connector for the module. More... | |
std::shared_ptr< WModuleOutputConnector > | findOutputConnector (std::string name) |
Finds the named connector for the module. More... | |
std::shared_ptr< WModuleConnector > | getConnector (std::string name) |
Finds the named connector for the module. More... | |
std::shared_ptr< WModuleConnector > | findConnector (std::string name) |
Finds the named connector for the module. More... | |
std::shared_ptr< WProperties > | getProperties () const |
Return a pointer to the properties object of the module. More... | |
std::shared_ptr< WProperties > | getInformationProperties () const |
Return a pointer to the information properties object of the module. More... | |
const WBoolFlag & | isInitialized () const |
Determines whether the module instance is properly initialized. More... | |
const WBoolFlag & | isUseable () const |
Checks whether the module instance is ready to be used. More... | |
const WBoolFlag & | isAssociated () const |
Checks whether this module is associated with an container. More... | |
const WBoolFlag & | isReady () const |
Checks whether this module is ready. More... | |
const WBoolFlag & | isReadyOrCrashed () const |
This is the logical or of isReady and isCrashed. More... | |
const WBoolFlag & | isRunning () 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< WModuleContainer > | getAssociatedContainer () 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< WProgressCombiner > | getRootProgressCombiner () |
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 WRequirement * | checkRequirements () 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 WBoolFlag & | isCrashed () 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... | |
virtual void | requirements () |
Initialize requirements 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 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 | |
void | handleMouseMove (WVector2f pos) |
Called on every mouse move event from the custom widget. More... | |
void | handleResize (int x, int y, int width, int height) |
Called on every resize event from the custom widget. More... | |
void | redraw () |
Redraws the histogram and add it to the main geode. More... | |
void | updateHistogramMax (bool cumulative) |
This updates the maximum value of the histograms. More... | |
void | calculateFrameSize () |
Finds a good size for the frame, depending on the chosen spacing for axis labels. More... | |
void | calculateFramePosition () |
Finds a good position of the frame relative to the lower left corner of the window. More... | |
void | calculateHistograms () |
This simply calculates a histogram per dataset, where the bin sizes and positions are the same for each histogram. More... | |
void | createGeometryBars (int type) |
Creates the geometry for histogram bars. More... | |
void | createGeometryStairs (int type) |
Creates the geometry for stairs (i.e. More... | |
void | createGeometryCurves (int type) |
Creates the geometry for curves. More... | |
void | createFrame () |
Creates the geometry for the frame and the ticks/labels. More... | |
void | createInfo (WVector2f mousePos) |
Writes the values of the currently selected histogram bin to the top right corner of the window. More... | |
double | findOptimalSpacing (double intervalLength, double availableSpace, double textSize) |
This finds a suitable spacing of ticks to use for an axis with a certain length and value interval. More... | |
WVector2d | histogramSpaceToWindowSpace (WVector2d const &v) |
This transforms histogram space coordinates to window coordinates. More... | |
WVector2d | windowSpaceToHistogramSpace (WVector2d const &v) |
This is the inverse of histogramSpaceToWindowSpace. More... | |
void | createNothing () |
This simply prints a NYI message to the errorLog. More... | |
Private Attributes | |
boost::mutex | m_createInfoMutex |
Whenever a new info node is made this mutex should be used. More... | |
boost::mutex | m_redrawMutex |
Whenever a redraw is made this mutex should be used. More... | |
std::vector< std::shared_ptr< WHistogramBasic > > | m_histograms |
A vector of histograms, one histogram per input. More... | |
std::shared_ptr< WCondition > | m_propCondition |
A condition for property updates. More... | |
int | m_windowWidth |
The width of the window. More... | |
int | m_windowHeight |
The height of the window. More... | |
WVector2d | m_mousePos |
The position of the mouse cursor in window coordinates. More... | |
osg::ref_ptr< osg::Geode > | m_infoNode |
Draws histogram bin info to the top right corner of the window. More... | |
osg::ref_ptr< osg::Geode > | m_markerNode |
Draws a marker showing the currently selected histogram bin. More... | |
WUIViewWidget::SPtr | m_widget |
Holds the reference to the custom widget used for displaying the histogram. More... | |
osg::ref_ptr< osg::Geode > | m_frameNode |
Draws the frame and ticks/labels. More... | |
WVector2d | m_histogramLowerLeft |
The lower left corner of the histogram in histogram coordinates. More... | |
WVector2d | m_histogramUpperRight |
The upper right corner of the histogram in histogram coordinates. More... | |
WVector2d | m_frameLowerLeft |
The lower left vertex of the frame box in histogram coordinates. More... | |
WVector2d | m_frameUpperRight |
The upper right vertex of the frame box in histogram coordinates. More... | |
WVector2d | m_frameSpacing |
The spacing between labels at the histogram axis in histogram coordinates. More... | |
WVector2d | m_framePosition |
The space to the left and under the frame in window coordinates. More... | |
double const | m_frameSize |
The distance between the histogram frame and the top resp. right side of the window in relative window coordinates. More... | |
int | m_instanceID |
The number of this WMHistogram instance. Used to generate a unique window title for every instance of this module. More... | |
osg::ref_ptr< WGEGroupNode > | m_mainNode |
The scene node of the custom window. All geometry nodes are added as children of this node. More... | |
std::vector< std::shared_ptr< WModuleInputData< WDataSetSingle > > > | m_input |
A vector of input connectors. More... | |
std::vector< std::shared_ptr< WDataSetSingle > > | m_data |
A vector of current datasets. More... | |
std::vector< WPropColor > | m_colors |
A vector of color properties for the datasets. More... | |
WPropInt | m_histoBins |
A property that is used to set the number of bins to use. More... | |
WPropSelection | m_styleSelection |
Allows to select which one of the geometry generation functions should be used. More... | |
std::vector< boost::function< void(void) > > | m_geometryFunctions |
A vector containing functions to use for histogram geometry generation. More... | |
Static Private Attributes | |
static WCounter | m_instanceCounter |
The instance counter used to get the instance ID. 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< WModule > | SPtr |
Shared pointer to a WModule. More... | |
typedef std::shared_ptr< const WModule > | ConstSPtr |
Shared pointer to a const WModule. More... | |
Public Types inherited from WThreadedRunner | |
typedef std::shared_ptr< WThreadedRunner > | SPtr |
Abbreviation to a shared_ptr to this type. More... | |
typedef std::shared_ptr< const WThreadedRunner > | ConstSPtr |
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< WProperties > | m_properties |
The property object for the module. More... | |
std::shared_ptr< WProperties > | m_infoProperties |
The property object for the module containing only module whose purpose is "PV_PURPOSE_INFORMNATION". More... | |
std::shared_ptr< WProgressCombiner > | m_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< WProgress > | m_readyProgress |
Progress indicator for the "ready" state. More... | |
WConditionSet | m_moduleState |
The internal state of the module. More... | |
std::shared_ptr< WModuleContainer > | m_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... | |
A module that draws a histogram of one or mode scalar datasets in a custom widget.
Definition at line 53 of file WMMultiHistogramView.h.
WMMultiHistogramView::WMMultiHistogramView | ( | ) |
Constuctor.
Definition at line 56 of file WMMultiHistogramView.cpp.
Referenced by factory().
|
virtual |
Destructor.
Definition at line 63 of file WMMultiHistogramView.cpp.
|
private |
Finds a good position of the frame relative to the lower left corner of the window.
Depends on the current frame size and the size of the text to be written left to/under the frame.
Definition at line 949 of file WMMultiHistogramView.cpp.
References m_framePosition, and m_frameSpacing.
Referenced by createGeometryBars(), createGeometryCurves(), and createGeometryStairs().
|
private |
Finds a good size for the frame, depending on the chosen spacing for axis labels.
Definition at line 883 of file WMMultiHistogramView.cpp.
References findOptimalSpacing(), m_frameLowerLeft, m_framePosition, m_frameSize, m_frameSpacing, m_frameUpperRight, m_histogramLowerLeft, m_histogramUpperRight, m_windowHeight, and m_windowWidth.
Referenced by createGeometryBars(), createGeometryCurves(), and createGeometryStairs().
|
private |
This simply calculates a histogram per dataset, where the bin sizes and positions are the same for each histogram.
Definition at line 341 of file WMMultiHistogramView.cpp.
References m_data, m_histoBins, m_histogramLowerLeft, m_histograms, m_histogramUpperRight, and updateHistogramMax().
Referenced by moduleMain().
|
protectedvirtual |
Initialize the connectors this module is using.
Reimplemented from WModule.
Definition at line 86 of file WMMultiHistogramView.cpp.
References WModule::addConnector(), WModule::connectors(), m_input, and string_utils::toString().
|
private |
Creates the geometry for the frame and the ticks/labels.
Definition at line 1001 of file WMMultiHistogramView.cpp.
References WPathHelper::getAllFonts(), histogramSpaceToWindowSpace(), m_data, m_frameLowerLeft, m_frameNode, m_frameSpacing, m_frameUpperRight, m_mainNode, and string_utils::toString().
Referenced by redraw().
|
private |
Creates the geometry for histogram bars.
The type parameter defines how the bars are drawn:
1 - transparent bars on top of each other 2 - bars of a bin are drawn next to each other 3 - stacked bars
type | The type of the bars. |
Definition at line 418 of file WMMultiHistogramView.cpp.
References calculateFramePosition(), calculateFrameSize(), histogramSpaceToWindowSpace(), m_colors, m_data, m_histograms, m_mainNode, and updateHistogramMax().
Referenced by properties().
|
private |
Creates the geometry for curves.
The type parameter can be 1 (normal) or 2 (stacked).
type | The type of the curves. |
Definition at line 592 of file WMMultiHistogramView.cpp.
References calculateFramePosition(), calculateFrameSize(), histogramSpaceToWindowSpace(), m_colors, m_data, m_histograms, m_mainNode, and updateHistogramMax().
Referenced by properties().
|
private |
Creates the geometry for stairs (i.e.
bars that are not filled). The type parameter can be 1 (normal) or 2 (stacked).
type | The type of the stairs. |
Definition at line 746 of file WMMultiHistogramView.cpp.
References calculateFramePosition(), calculateFrameSize(), histogramSpaceToWindowSpace(), m_colors, m_data, m_histograms, m_mainNode, and updateHistogramMax().
Referenced by properties().
|
private |
Writes the values of the currently selected histogram bin to the top right corner of the window.
The selected bin is the one pointed to by the mouse cursor.
Also adds a quad denoting the currently selected bin that is drawn behind the geometry.
mousePos | Current mouse position |
Definition at line 1099 of file WMMultiHistogramView.cpp.
References WPathHelper::getAllFonts(), histogramSpaceToWindowSpace(), m_colors, m_createInfoMutex, m_data, m_histogramLowerLeft, m_histograms, m_histogramUpperRight, m_infoNode, m_mainNode, m_markerNode, m_windowHeight, m_windowWidth, string_utils::toString(), and windowSpaceToHistogramSpace().
Referenced by handleMouseMove().
|
private |
This simply prints a NYI message to the errorLog.
Definition at line 1221 of file WMMultiHistogramView.cpp.
References WModule::errorLog().
|
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.
Implements WModule.
Definition at line 67 of file WMMultiHistogramView.cpp.
References WMMultiHistogramView().
|
private |
This finds a suitable spacing of ticks to use for an axis with a certain length and value interval.
intervalLength | The length of the value interval to represent. |
availableSpace | The space available (in pixels on screen) for the interval. |
textSize | The estimated size of the text for every tick. |
Definition at line 839 of file WMMultiHistogramView.cpp.
Referenced by calculateFrameSize().
|
virtual |
Gives back a description of this module.
Implements WPrototyped.
Definition at line 81 of file WMMultiHistogramView.cpp.
|
virtual |
Gives back the name of this module.
Implements WPrototyped.
Definition at line 76 of file WMMultiHistogramView.cpp.
Referenced by moduleMain().
|
virtual |
Get the icon for this module in XPM format.
Reimplemented from WModule.
Definition at line 72 of file WMMultiHistogramView.cpp.
|
private |
Called on every mouse move event from the custom widget.
pos | New mouse position. |
Definition at line 161 of file WMMultiHistogramView.cpp.
References createInfo(), m_histograms, m_infoNode, m_mainNode, and m_markerNode.
Referenced by moduleMain().
|
private |
Called on every resize event from the custom widget.
x | X pos |
y | Y pos |
width | Widht |
height | Height |
Definition at line 181 of file WMMultiHistogramView.cpp.
References m_histograms, m_mainNode, m_redrawMutex, m_windowHeight, m_windowWidth, and redraw().
Referenced by moduleMain().
This transforms histogram space coordinates to window coordinates.
Histogram coordinates range from the minimum to the maximum values of all histograms in x-direction and from 0 to the maximum bin value over all histograms (or the maximum bin value where the bins of all datasets are added; this is for cumulative histogram types).
v | The input in histogram coords. |
Definition at line 959 of file WMMultiHistogramView.cpp.
References m_frameLowerLeft, m_framePosition, m_frameSize, m_frameUpperRight, m_histogramLowerLeft, m_windowHeight, and m_windowWidth.
Referenced by createFrame(), createGeometryBars(), createGeometryCurves(), createGeometryStairs(), and createInfo().
|
protectedvirtual |
Entry point after loading the module.
Runs in separate thread.
Holds the reference to the custom widget used for displaying the histogram
Implements WModule.
Definition at line 200 of file WMMultiHistogramView.cpp.
References WConditionSet::add(), calculateHistograms(), WModule::debugLog(), WModule::errorLog(), getName(), WKernel::getRunningKernel(), WKernel::getUI(), WFlag< T >::getValueChangeCondition(), handleMouseMove(), handleResize(), WModule::infoLog(), m_colors, m_data, m_histoBins, m_input, m_instanceCounter, m_instanceID, m_mainNode, WModule::m_moduleState, m_propCondition, m_redrawMutex, WThreadedRunner::m_shutdownFlag, m_styleSelection, m_widget, m_windowHeight, m_windowWidth, WModule::ready(), redraw(), WConditionSet::setResetable(), string_utils::toString(), and WConditionSet::wait().
|
protectedvirtual |
Initialize the properties for this module.
Reimplemented from WModule.
Definition at line 103 of file WMMultiHistogramView.cpp.
References WPropertyHelper::PC_SELECTONLYONE::addTo(), createGeometryBars(), createGeometryCurves(), createGeometryStairs(), m_colors, m_geometryFunctions, m_histoBins, m_propCondition, WModule::m_properties, m_styleSelection, WModule::properties(), and string_utils::toString().
|
private |
Redraws the histogram and add it to the main geode.
Definition at line 322 of file WMMultiHistogramView.cpp.
References createFrame(), WModule::errorLog(), m_geometryFunctions, and m_styleSelection.
Referenced by handleResize(), and moduleMain().
|
protectedvirtual |
Initialize requirements for this module.
Reimplemented from WModule.
Definition at line 154 of file WMMultiHistogramView.cpp.
References WModule::m_requirements.
|
private |
This updates the maximum value of the histograms.
cumulative | If true, histogram values of the datasets will be added for each bin. |
Definition at line 390 of file WMMultiHistogramView.cpp.
References m_data, m_histograms, and m_histogramUpperRight.
Referenced by calculateHistograms(), createGeometryBars(), createGeometryCurves(), and createGeometryStairs().
This is the inverse of histogramSpaceToWindowSpace.
v | The input in window coords. |
Definition at line 986 of file WMMultiHistogramView.cpp.
References m_frameLowerLeft, m_framePosition, m_frameSize, m_frameUpperRight, m_histogramLowerLeft, m_windowHeight, and m_windowWidth.
Referenced by createInfo().
|
private |
A vector of color properties for the datasets.
Definition at line 326 of file WMMultiHistogramView.h.
Referenced by createGeometryBars(), createGeometryCurves(), createGeometryStairs(), createInfo(), moduleMain(), and properties().
|
private |
Whenever a new info node is made this mutex should be used.
Definition at line 137 of file WMMultiHistogramView.h.
Referenced by createInfo().
|
private |
A vector of current datasets.
Definition at line 323 of file WMMultiHistogramView.h.
Referenced by calculateHistograms(), createFrame(), createGeometryBars(), createGeometryCurves(), createGeometryStairs(), createInfo(), moduleMain(), and updateHistogramMax().
|
private |
The lower left vertex of the frame box in histogram coordinates.
Definition at line 294 of file WMMultiHistogramView.h.
Referenced by calculateFrameSize(), createFrame(), histogramSpaceToWindowSpace(), and windowSpaceToHistogramSpace().
|
private |
Draws the frame and ticks/labels.
Definition at line 285 of file WMMultiHistogramView.h.
Referenced by createFrame().
|
private |
The space to the left and under the frame in window coordinates.
Definition at line 303 of file WMMultiHistogramView.h.
Referenced by calculateFramePosition(), calculateFrameSize(), histogramSpaceToWindowSpace(), and windowSpaceToHistogramSpace().
|
private |
The distance between the histogram frame and the top resp. right side of the window in relative window coordinates.
Definition at line 306 of file WMMultiHistogramView.h.
Referenced by calculateFrameSize(), histogramSpaceToWindowSpace(), and windowSpaceToHistogramSpace().
|
private |
The spacing between labels at the histogram axis in histogram coordinates.
Definition at line 300 of file WMMultiHistogramView.h.
Referenced by calculateFramePosition(), calculateFrameSize(), and createFrame().
|
private |
The upper right vertex of the frame box in histogram coordinates.
Definition at line 297 of file WMMultiHistogramView.h.
Referenced by calculateFrameSize(), createFrame(), histogramSpaceToWindowSpace(), and windowSpaceToHistogramSpace().
|
private |
A vector containing functions to use for histogram geometry generation.
Definition at line 337 of file WMMultiHistogramView.h.
Referenced by properties(), and redraw().
|
private |
A property that is used to set the number of bins to use.
Definition at line 329 of file WMMultiHistogramView.h.
Referenced by calculateHistograms(), moduleMain(), and properties().
|
private |
The lower left corner of the histogram in histogram coordinates.
Definition at line 288 of file WMMultiHistogramView.h.
Referenced by calculateFrameSize(), calculateHistograms(), createInfo(), histogramSpaceToWindowSpace(), and windowSpaceToHistogramSpace().
|
private |
A vector of histograms, one histogram per input.
Histograms may be empty if an input does not have a valid dataset.
Definition at line 261 of file WMMultiHistogramView.h.
Referenced by calculateHistograms(), createGeometryBars(), createGeometryCurves(), createGeometryStairs(), createInfo(), handleMouseMove(), handleResize(), and updateHistogramMax().
|
private |
The upper right corner of the histogram in histogram coordinates.
Definition at line 291 of file WMMultiHistogramView.h.
Referenced by calculateFrameSize(), calculateHistograms(), createInfo(), and updateHistogramMax().
|
private |
Draws histogram bin info to the top right corner of the window.
Definition at line 276 of file WMMultiHistogramView.h.
Referenced by createInfo(), and handleMouseMove().
|
private |
A vector of input connectors.
Definition at line 320 of file WMMultiHistogramView.h.
Referenced by connectors(), and moduleMain().
|
staticprivate |
The instance counter used to get the instance ID.
Definition at line 312 of file WMMultiHistogramView.h.
Referenced by moduleMain().
|
private |
The number of this WMHistogram instance. Used to generate a unique window title for every instance of this module.
Definition at line 309 of file WMMultiHistogramView.h.
Referenced by moduleMain().
|
private |
The scene node of the custom window. All geometry nodes are added as children of this node.
Definition at line 315 of file WMMultiHistogramView.h.
Referenced by createFrame(), createGeometryBars(), createGeometryCurves(), createGeometryStairs(), createInfo(), handleMouseMove(), handleResize(), and moduleMain().
|
private |
Draws a marker showing the currently selected histogram bin.
Definition at line 279 of file WMMultiHistogramView.h.
Referenced by createInfo(), and handleMouseMove().
|
private |
The position of the mouse cursor in window coordinates.
Definition at line 273 of file WMMultiHistogramView.h.
|
private |
A condition for property updates.
Definition at line 264 of file WMMultiHistogramView.h.
Referenced by moduleMain(), and properties().
|
private |
Whenever a redraw is made this mutex should be used.
Definition at line 142 of file WMMultiHistogramView.h.
Referenced by handleResize(), and moduleMain().
|
private |
Allows to select which one of the geometry generation functions should be used.
Definition at line 334 of file WMMultiHistogramView.h.
Referenced by moduleMain(), properties(), and redraw().
|
private |
Holds the reference to the custom widget used for displaying the histogram.
Definition at line 282 of file WMMultiHistogramView.h.
Referenced by moduleMain().
|
private |
The height of the window.
Definition at line 270 of file WMMultiHistogramView.h.
Referenced by calculateFrameSize(), createInfo(), handleResize(), histogramSpaceToWindowSpace(), moduleMain(), and windowSpaceToHistogramSpace().
|
private |
The width of the window.
Definition at line 267 of file WMMultiHistogramView.h.
Referenced by calculateFrameSize(), createInfo(), handleResize(), histogramSpaceToWindowSpace(), moduleMain(), and windowSpaceToHistogramSpace().