Tulip  5.1.0
Large graphs analysis and drawing
tlp Namespace Reference

Classes

class  AboutTulipPage
 
class  AbstractProperty
 
class  AcyclicTest
 
class  AdditionalGlSceneAnimation
 
class  Algorithm
 
class  AlgorithmContext
 
struct  Array
 
class  BiconnectedTest
 
class  BooleanAlgorithm
 
class  BooleanProperty
 
class  BooleanVectorProperty
 
struct  BoundingBox
 
class  Camera
 
class  ColorAlgorithm
 
class  ColorProperty
 
class  ColorScale
 
class  ColorScalesManager
 
class  ColorVectorProperty
 
class  ConnectedTest
 
class  CoordVectorProperty
 
class  DataSet
 
struct  DataType
 
struct  Dependency
 
class  DoubleAlgorithm
 
class  DoubleProperty
 
class  DoubleVectorProperty
 
struct  edge
 
class  Event
 
class  FileDownloader
 
class  FloatValidator
 
class  Gl2DRect
 
class  GlAbstractPolygon
 
class  GlAxis
 
class  GlBezierCurve
 
class  GlBox
 
class  GlCatmullRomCurve
 
class  GlCircle
 
class  GlComplexPolygon
 
class  GlComposite
 
class  GlDefaultSelectionColorManager
 
class  GlGraphComposite
 
class  GlGraphRenderer
 
class  GlGraphRenderingParameters
 
class  GlGrid
 
class  GlHexagon
 
class  GLInteractorComponent
 
class  GLInteractorComposite
 
class  GlLabel
 
class  GlLayer
 
class  GlMainView
 
class  GlMainWidget
 
class  GlOpenUniformCubicBSpline
 
class  GlPentagon
 
class  GlPolygon
 
class  GlRect
 
class  GlRegularPolygon
 
class  GlScene
 
class  GlSceneZoomAndPan
 
class  GlSimpleEntity
 
class  GlSphere
 
class  GlStar
 
class  GlTriangle
 
class  Graph
 
class  GraphEvent
 
class  GraphNeedsSavingObserver
 
class  GraphProperty
 
class  IntegerAlgorithm
 
class  IntegerProperty
 
class  IntegerVectorProperty
 
class  Interactor
 
class  InteractorComposite
 
class  InteractorLister
 
class  LayoutAlgorithm
 
class  LayoutProperty
 
class  MinMaxProperty
 
struct  node
 
class  NodeLinkDiagramComponentInteractor
 
class  NumericProperty
 
class  Observable
 
class  ObservableException
 
class  ObserverHolder
 
class  OuterPlanarTest
 
class  ParameterDescription
 
struct  ParameterDescriptionList
 
class  Perspective
 
class  PerspectiveContext
 
class  PlanarityTest
 
class  Plugin
 
class  PluginContext
 
class  PluginLister
 
struct  PluginLoader
 
struct  PluginLoaderTxt
 
class  PluginProgress
 
class  ProgressPreviewHandler
 
class  PropertyAlgorithm
 
class  PropertyEvent
 
class  PropertyInterface
 
class  QtGlSceneZoomAndPanAnimator
 
class  ScientificDoubleSpinBox
 
struct  SelectedEntity
 
struct  SelfLoops
 
class  SimpleTest
 
class  SizeAlgorithm
 
class  SizeProperty
 
class  SizeVectorProperty
 
struct  SortEdgeIterator
 
struct  SortExtremitiesEdgeIterator
 
struct  SortNodeIterator
 
struct  SortSourceEdgeIterator
 
struct  SortTargetEdgeIterator
 
class  StringAlgorithm
 
class  StringProperty
 
class  StringVectorProperty
 
class  TemplateAlgorithm
 
class  TreeTest
 
class  TriconnectedTest
 
class  TulipFontAwesome
 
class  TulipMaterialDesignIcons
 
class  TulipProject
 
class  VectorPropertyInterface
 
class  View
 
class  ViewWidget
 
class  WithDependency
 
struct  WithParameter
 

Typedefs

typedef AbstractProperty< tlp::ColorType, tlp::ColorType > AbstractColorProperty
 
typedef AbstractProperty< tlp::GraphType, tlp::EdgeSetType > AbstractGraphProperty
 
typedef AbstractProperty< tlp::PointType, tlp::LineType > AbstractLayoutProperty
 
typedef AbstractProperty< tlp::SizeType, tlp::SizeType > AbstractSizeProperty
 
typedef AbstractProperty< tlp::StringType, tlp::StringType > AbstractStringProperty
 
typedef MinMaxProperty< tlp::DoubleType, tlp::DoubleType, tlp::NumericPropertyDoubleMinMaxProperty
 
typedef MinMaxProperty< tlp::IntegerType, tlp::IntegerType, tlp::NumericPropertyIntegerMinMaxProperty
 
typedef MinMaxProperty< tlp::PointType, tlp::LineType > LayoutMinMaxProperty
 
typedef CoordVectorProperty LayoutVectorProperty
 

Enumerations

enum  ElementType { NODE = 0, EDGE = 1 }
 
enum  ParameterDirection { IN_PARAM =0, OUT_PARAM = 1, INOUT_PARAM = 2 }
 
enum  ProgressState { TLP_CONTINUE, TLP_CANCEL, TLP_STOP }
 

Functions

 _DEPRECATED_TYPEDEF (ObserverHolder, ObserverLocker)
 
QColor colorToQColor (const Color &color)
 
void convexHull (const std::vector< Coord > &points, std::vector< unsigned int > &convexHull)
 
void convexHull (const std::vector< Coord > &points, std::vector< std::vector< unsigned int > > &convexHullFacets, std::vector< std::vector< unsigned int > > &facetNeighbors)
 
void copyToGraph (Graph *outG, const Graph *inG, BooleanProperty *inSelection=NULL, BooleanProperty *outSelection=NULL)
 
std::string demangleClassName (const char *className, bool hideTlp=false)
 
std::string demangleTlpClassName (const char *className)
 
void disableQtUserInput ()
 
void enableQtUserInput ()
 
bool exportGraph (Graph *graph, std::ostream &outputStream, const std::string &format, DataSet &dataSet, PluginProgress *progress=NULL)
 
bool getColorDialog (const QColor &color, QWidget *parent, const QString &title, QColor &result)
 
std::istream * getIgzstream (const std::string &name, int open_mode=std::ios::in)
 
std::istream * getInputFileStream (const std::string &filename, std::ios_base::openmode open_mode=std::ios::in)
 
std::string getMajor (const std::string &release)
 
std::string getMinor (const std::string &release)
 
std::ostream * getOgzstream (const std::string &name, int open_mode=std::ios::out)
 
std::ostream * getOutputFileStream (const std::string &filename, std::ios_base::openmode open_mode=std::ios::out)
 
QString getPluginLocalInstallationDir ()
 
QString getPluginPackageName (const QString &pluginName)
 
QString getPluginStagingDirectory ()
 
Iterator< Graph * > * getRootGraphs ()
 
unsigned int getSeedOfRandomSequence ()
 
GraphimportGraph (const std::string &format, DataSet &dataSet, PluginProgress *progress=NULL, Graph *newGraph=NULL)
 
void initRandomSequence ()
 
void initTulipLib (const char *appDirPath=NULL)
 
void initTulipSoftware (PluginLoader *loader=NULL, bool removeDiscardedPlugins=false)
 
GraphloadGraph (const std::string &filename, tlp::PluginProgress *progress=NULL)
 
QString localPluginsPath ()
 
GraphnewGraph ()
 
template<typename Obj , unsigned int SIZE>
std::ostream & operator<< (std::ostream &os, const Array< Obj, SIZE > &array)
 
template<typename Obj , unsigned int SIZE>
std::istream & operator>> (std::istream &is, Array< Obj, SIZE > &array)
 
QString propertyInterfaceToPropertyTypeLabel (const tlp::PropertyInterface *const property)
 
std::string propertyTypeLabelToPropertyType (const QString &typeNameLabel)
 
QString propertyTypeToPropertyTypeLabel (const std::string &typeName)
 
Color QColorToColor (const QColor &color)
 
bool QStringCaseCmp (const QString &s1, const QString &s2)
 
std::string QStringToTlpString (const QString &toConvert)
 
double randomDouble (double max=1.0)
 
int randomInteger (int max)
 
unsigned int randomUnsignedInteger (unsigned int max)
 
void redirectDebugOutputToQDebug ()
 
void redirectErrorOutputToQCritical ()
 
void redirectWarningOutputToQWarning ()
 
void removeFromGraph (Graph *ioG, BooleanProperty *inSelection=NULL)
 
bool saveGraph (Graph *graph, const std::string &filename, tlp::PluginProgress *progress=NULL, tlp::DataSet *data=NULL)
 
void setSeedOfRandomSequence (unsigned int seed=UINT_MAX)
 
int statPath (const std::string &pathname, tlp_stat_t *buf)
 
QString tlpStringToQString (const std::string &toConvert)
 

Variables

static const std::string ALGORITHM_CATEGORY = "Algorithm"
 
static const std::string BOOLEAN_ALGORITHM_CATEGORY = "Selection"
 
static const std::string COLOR_ALGORITHM_CATEGORY = "Coloring"
 
static const std::string DOUBLE_ALGORITHM_CATEGORY = "Measure"
 
static const std::string INTEGER_ALGORITHM_CATEGORY = "Measure"
 
static const std::string INTERACTOR_CATEGORY = "Interactor"
 
static const std::string LAYOUT_ALGORITHM_CATEGORY = "Layout"
 
const char PATH_DELIMITER
 
static const std::string PERSPECTIVE_CATEGORY = "Perspective"
 
static const std::string PROPERTY_ALGORITHM_CATEGORY = "Property"
 
static const std::string SIZE_ALGORITHM_CATEGORY = "Resizing"
 
static const std::string STRING_ALGORITHM_CATEGORY = "Labeling"
 
std::string TulipBitmapDir
 
std::string TulipLibDir
 
std::string TulipPluginsPath
 
std::string TulipShareDir
 
static const std::string VIEW_CATEGORY = "Panel"
 

Detailed Description

This file is part of Tulip (http://tulip.labri.fr)

Authors: David Auber and the Tulip development Team from LaBRI, University of Bordeaux

Tulip is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Tulip is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Enumeration Type Documentation

Enumerator
NODE 

This element describes a node

EDGE 

This element describes an edge

Definition at line 47 of file Graph.h.

Function Documentation

void tlp::convexHull ( const std::vector< Coord > &  points,
std::vector< unsigned int > &  convexHull 
)

function for computing a 2D convex hull

Computes a 2D convex hull using the Qhull library (www.qhull.org)

Computes the 2D convex hull and returns a list of indexes for the points on the convex hull in counterclockwise order.

The convexHull vector is automatically cleared.

void tlp::convexHull ( const std::vector< Coord > &  points,
std::vector< std::vector< unsigned int > > &  convexHullFacets,
std::vector< std::vector< unsigned int > > &  facetNeighbors 
)

function for computing a 2D/3D convex hull

Computes a 2D/3D convex hull using the Qhull library (www.qhull.org)

Computes a 2D/3D convex hull and returns a list of the hull facets (segments for 2D, triangles for 3D) and a list of neighbors facets for each facet. A facet is defined by a list of indexes in the points vector. The neighbors facets of a facet are defined by a list of indexes in the convexHullFacets vector (facetNeighbors[i] stores the neighbors of facet convexHullFacets[i]).

The convexHullFacets and facetNeighbors vectors are automatically cleared.

std::istream* tlp::getIgzstream ( const std::string &  name,
int  open_mode = std::ios::in 
)

Returns an istream to read from a gzipped file (uses gzstream lib). The stream has to be deleted after use.

Parameters
nameThe name of the file to read from.
open_modeThe mode to open the file with. Defaults to std::ios::in.
Returns
istream gzipped input stream from a file.

+ Here is the caller graph for this function:

std::istream* tlp::getInputFileStream ( const std::string &  filename,
std::ios_base::openmode  open_mode = std::ios::in 
)

Cross-platform function to get an input file stream. Its purpose is to support paths on windows platform containing non-ascii characters.

Parameters
filenamean utf-8 encoded string containing the path of the file to open for performing input operations
open_modethe stream opening mode flags (bitwise combination of std::ios_base::openmode constants).

+ Here is the caller graph for this function:

std::ostream* tlp::getOgzstream ( const std::string &  name,
int  open_mode = std::ios::out 
)

Returns an ostream to write to a gzipped file (uses gzstream lib). The stream has to be deleted after use.

Warning
Don't forget to check the stream with ios::bad()!
Parameters
nameThe name of the file to write to.
open_modeThe mode to open the file with. Defaults to std::ios::out.
Returns
ostream gzipped output stream to a file.

+ Here is the caller graph for this function:

std::ostream* tlp::getOutputFileStream ( const std::string &  filename,
std::ios_base::openmode  open_mode = std::ios::out 
)

Cross-platform function to get an output file stream. Its purpose is to support paths on windows platform containing non-ascii characters.

Parameters
filenamean utf-8 encoded string containing the path of the file to open for performing output operations
open_modethe stream opening mode flags (bitwise combination of std::ios_base::openmode constants).

+ Here is the caller graph for this function:

QString tlp::getPluginPackageName ( const QString &  pluginName)

Gets the name of the package to retrieve for this version of tulip. The package name uses the Tulip release, platform (windows, unix, ...), architecture (x86, x86_64), and compiler used (GCC, Clang, MSVC) to determine which package this version can use.

Parameters
pluginNameThe name of the plugin for which we want the package name.

+ Here is the caller graph for this function:

unsigned int tlp::getSeedOfRandomSequence ( )

Returns the value of the seed used for further initialization of a random sequence.

+ Here is the caller graph for this function:

void tlp::initRandomSequence ( )

Initializes a random sequence with the seed previously set Further calls to rand() or random() will return the elements of that sequence.

+ Here is the caller graph for this function:

void tlp::initTulipSoftware ( PluginLoader loader = NULL,
bool  removeDiscardedPlugins = false 
)

Sets up environment when creating an executable using Tulip libraries This method performs basic operations when starting a software using Tulip: .

  • It initializes the tulip library
  • it checks plugins to be discarded and uninstalls them
  • It loads plugins from the application path
Examples:
graph_display/graph_display.cpp.

+ Here is the caller graph for this function:

template<typename Obj , unsigned int SIZE>
std::ostream & tlp::operator<< ( std::ostream &  os,
const Array< Obj, SIZE > &  array 
)

operator << stream operator to easily print an array, or save it to a file.

Parameters
osThe stream to output to.
arrayThe array to output.
Returns
The stream to output to, to chain calls.

Definition at line 34 of file Array.cxx.

+ Here is the caller graph for this function:

template<typename Obj , unsigned int SIZE>
std::istream & tlp::operator>> ( std::istream &  is,
tlp::Array< Obj, SIZE > &  outA 
)

operator >> stream operator to easily read an array

Parameters
isThe stream to read from.
arrayA reference to an array, that will be written to.
Returns
The stream to read from, to chain calls.

Definition at line 58 of file Array.cxx.

QString tlp::propertyInterfaceToPropertyTypeLabel ( const tlp::PropertyInterface *const  property)
inline

Get the string to display as property type for the given property. The property type label is the string to display in the GUI instead of the property type string. By example for a property of type "double" the label displayed in the GUI will be "Metric".

Definition at line 78 of file TlpQtTools.h.

+ Here is the call graph for this function:

std::string tlp::propertyTypeLabelToPropertyType ( const QString &  typeNameLabel)

Convert the label of a property type to it's corresponding property type. The property type label is the string to display in the GUI instead of the property type string. By example for a property of type "double" the label displayed in the GUI will be "Metric".

+ Here is the caller graph for this function:

QString tlp::propertyTypeToPropertyTypeLabel ( const std::string &  typeName)

Convert the property type string to a label to display in the GUI. The property type label is the string to display in the GUI instead of the basic property type string.

+ Here is the caller graph for this function:

bool tlp::QStringCaseCmp ( const QString &  s1,
const QString &  s2 
)
inline

Case insensitive comparison of two QStrings.

Definition at line 61 of file TlpQtTools.h.

+ Here is the call graph for this function:

std::string tlp::QStringToTlpString ( const QString &  toConvert)
inline

Convert a QString to a Tulip UTF-8 encoded std::string.

Examples:
graph_display/graph_display.cpp.

Definition at line 48 of file TlpQtTools.h.

double tlp::randomDouble ( double  max = 1.0)

Returns a random double in the range [0, max].

+ Here is the caller graph for this function:

int tlp::randomInteger ( int  max)

Returns a random integer in the range [0, max] if max is positive or in the range [max, 0] if max is negative.

+ Here is the caller graph for this function:

unsigned int tlp::randomUnsignedInteger ( unsigned int  max)

Returns a random unsigned integer in the range [0, max].

+ Here is the caller graph for this function:

void tlp::redirectDebugOutputToQDebug ( )

redirect tlp::debug() to qDebug()

+ Here is the caller graph for this function:

void tlp::redirectErrorOutputToQCritical ( )

redirect tlp::error() to qCritical()

+ Here is the caller graph for this function:

void tlp::redirectWarningOutputToQWarning ( )

redirect tlp::warning() to qWarning()

+ Here is the caller graph for this function:

void tlp::setSeedOfRandomSequence ( unsigned int  seed = UINT_MAX)

Gives the value of the seed used for further initialization of a random sequence (with further calls to rand() or random()).

Parameters
seedthe value of the seed. Set seed to UINT_MAX if you need a random choice of the seed.

+ Here is the caller graph for this function:

int tlp::statPath ( const std::string &  pathname,
tlp_stat_t *  buf 
)

Cross-platform function to stat a path on a filesystem. Its purpose is to support paths on windows platform containing non-ascii characters.

Parameters
pathnamean utf-8 encoded string containing the path name to stat
bufa pointer to a tlp_stat_t structure (a typedef for struct stat)

+ Here is the caller graph for this function:

QString tlp::tlpStringToQString ( const std::string &  toConvert)
inline

Convert a Tulip UTF-8 encoded std::string to a QString.

Definition at line 54 of file TlpQtTools.h.

+ Here is the caller graph for this function: