Sparksee 6.1.0
DefaultExport Class Reference

Default implementation for ExportManager class. More...

#include <Export.h>

Inheritance diagram for DefaultExport:
Inheritance graph
Collaboration diagram for DefaultExport:
Collaboration graph

Public Member Functions

 DefaultExport ()
 Creates a new instance.
virtual ~DefaultExport ()
 Destructor.
bool_t SubgraphNodes (Objects &nodes)
 Limit the exported nodes to the nodes in the given node set.
bool_t SubgraphEdges (Objects &edges)
 Limit the exported edges to the edges in the given edges set.
void SetTitleWithAttributes (bool_t encoded)
 Include additional information including all the node/edge attributes as Title instead of the default title text (just the type name).
void SetTypeColorRGB (type_t type, ColorRGB color)
 Set the color for a specific node/edge type.
void SetNodeTypeImage (type_t nodeType, const std::wstring &image)
 Set an image for all the nodes of a specific node type.
void SetNodeTypeImageAttribute (type_t nodeType, attr_t imageAttr)
 Set the attribute that stores the image for a specific node type.
void SetTypeLabelAttribute (type_t type, attr_t labelAttr)
 Set the attribute that stores the label for a specific node/edge type.
void SetNodeTypeShape (type_t nodeType, NodeShape shape)
 Set the shape for all nodes of this type.
bool_t SetMaxTextCharacters (int32_t size)
 Sets the maximum number of Text Attribute characters to show.
bool_t SetMaxArrayElements (int32_t size)
 Sets the maximum number of elements of an Array Attribute to show.
virtual void Prepare (Graph *graph)
 Default implementation of the ExportManager class method Prepare.
virtual void Release ()
 Default implementation of the ExportManager class method Release.
virtual bool_t GetGraph (GraphExport &graphExport)
 Default implementation of the ExportManager class method GetGraph.
virtual bool_t GetNodeType (type_t type, NodeExport &nodeExport)
 Default implementation of the ExportManager class method GetNodeType.
virtual bool_t GetEdgeType (type_t type, EdgeExport &edgeExport)
 Default implementation of the ExportManager class method GetEdgeType.
virtual bool_t GetNode (oid_t node, NodeExport &nodeExport)
 Default implementation of the ExportManager class method GetNode.
virtual bool_t GetEdge (oid_t edge, EdgeExport &edgeExport)
 Default implementation of the ExportManager class method GetEdge.
virtual bool_t EnableType (type_t type)
 Default implementation of the ExportManager class method EnableType.
virtual bool_t ExportAll ()
 Get if all the graph object should be exported or only a subgraph It should return true (default option), to export all the nodes and edges in the Graph as with previous verions.
virtual oid_t NextNode ()
 Gets the next node to export or InvalidOID.
virtual oid_t NextEdge ()
 Gets the next edge to export or InvalidOID.

Detailed Description

Default implementation for ExportManager class.

It uses the default values from GraphExport, NodeExport and EdgeExport to export all node and edge types.

Author
Sparsity Technologies http://www.sparsity-technologies.com

Member Function Documentation

◆ EnableType()

virtual bool_t DefaultExport::EnableType ( type_t type)
virtual

Default implementation of the ExportManager class method EnableType.

This enables all node and edge types to be exported.

Parameters
type[in] The type to enable.
Returns
TRUE.

Implements ExportManager.

◆ ExportAll()

virtual bool_t DefaultExport::ExportAll ( )
virtual

Get if all the graph object should be exported or only a subgraph It should return true (default option), to export all the nodes and edges in the Graph as with previous verions.

Or false to use the new Next() method of this class to get the only nodes/edges that should be exported. It will return true to export all the graph unless a subgraph had been selected by calling the SubgraphNodes or SubgraphEdges methods.

Returns
bool_t Returns true to export all the graph or false otherwise.

Reimplemented from ExportManager.

◆ GetEdge()

virtual bool_t DefaultExport::GetEdge ( oid_t edge,
EdgeExport & edgeExport )
virtual

Default implementation of the ExportManager class method GetEdge.

This sets the default EdgeExport values and sets the OID as the label. Also, it exports the edge as directed just if the edge is directed.

Parameters
edge[in] An edge.
edgeExport[out] The EdgeExport that will store the information.
Returns
TRUE.

Implements ExportManager.

◆ GetEdgeType()

virtual bool_t DefaultExport::GetEdgeType ( type_t type,
EdgeExport & edgeExport )
virtual

Default implementation of the ExportManager class method GetEdgeType.

This sets de default EdgeExport values.

Parameters
type[in] An edge type.
edgeExport[out] The EdgeExport that will store the information.
Returns
TRUE.

Implements ExportManager.

◆ GetGraph()

virtual bool_t DefaultExport::GetGraph ( GraphExport & graphExport)
virtual

Default implementation of the ExportManager class method GetGraph.

This sets the default GraphExport values including the default background color and the database alias as the label. The default GraphExport label could be empty (because the database did not have an alias) but this method will add " graph" or " subgraph" to the label anyway to easily know if the hole graph was exported or just some nodes/edges.

Parameters
graphExport[out] The GraphExport that will store the information.
Returns
TRUE.

Implements ExportManager.

◆ GetNode()

virtual bool_t DefaultExport::GetNode ( oid_t node,
NodeExport & nodeExport )
virtual

Default implementation of the ExportManager class method GetNode.

This sets the default NodeExport values and sets the OID as the label.

Parameters
node[in] A node.
nodeExport[out] The NodeExport that will store the information.
Returns
TRUE.

Implements ExportManager.

◆ GetNodeType()

virtual bool_t DefaultExport::GetNodeType ( type_t type,
NodeExport & nodeExport )
virtual

Default implementation of the ExportManager class method GetNodeType.

This sets de default NodeExport values.

Parameters
type[in] A node type.
nodeExport[out] The NodeExport that will store the information.
Returns
TRUE.

Implements ExportManager.

◆ NextEdge()

virtual oid_t DefaultExport::NextEdge ( )
virtual

Gets the next edge to export or InvalidOID.

It will return valid edge OIDs to export and InvalidOID when there is not any more edges to export.

Precondition
ExportAll returns false.
Returns
oid_t Return an edge OID or InvalidOID

Reimplemented from ExportManager.

◆ NextNode()

virtual oid_t DefaultExport::NextNode ( )
virtual

Gets the next node to export or InvalidOID.

It will return valid node OIDs to export and InvalidOID when there is not any more nodes to export.

Precondition
ExportAll returns false.
Returns
oid_t Return a node OID or InvalidOID

Reimplemented from ExportManager.

◆ SetMaxArrayElements()

bool_t DefaultExport::SetMaxArrayElements ( int32_t size)

Sets the maximum number of elements of an Array Attribute to show.

If an Array Attribute has more than the given size elements, only the first ones will be used and "..." will be added.

Returns
Returns True if successful or False if the give value is not valid.

◆ SetMaxTextCharacters()

bool_t DefaultExport::SetMaxTextCharacters ( int32_t size)

Sets the maximum number of Text Attribute characters to show.

If a Text Attribute has more than the given size characters it will be truncated and "..." will be added.

Returns
Returns True if successful or False if the give value is not valid.

◆ SetNodeTypeImage()

void DefaultExport::SetNodeTypeImage ( type_t nodeType,
const std::wstring & image )

Set an image for all the nodes of a specific node type.

Parameters
nodeType[in] A valid node type.
image[in] A path or URL of the image to use for all nodes of this type.

◆ SetNodeTypeImageAttribute()

void DefaultExport::SetNodeTypeImageAttribute ( type_t nodeType,
attr_t imageAttr )

Set the attribute that stores the image for a specific node type.

Parameters
nodeType[in] A valid node type.
imageAttr[in] The attribute to use for nodes of this type to get the image url/path.

◆ SetNodeTypeShape()

void DefaultExport::SetNodeTypeShape ( type_t nodeType,
NodeShape shape )

Set the shape for all nodes of this type.

Parameters
nodeType[in] A valid node type.
shape[in] The shape for all the nodes of the given type.

◆ SetTitleWithAttributes()

void DefaultExport::SetTitleWithAttributes ( bool_t encoded)

Include additional information including all the node/edge attributes as Title instead of the default title text (just the type name).

Parameters
encoded[in] If true the tooltip data will be added as a base64 encoded JSON instead of very basic html text format for easy parsing of the additional data.

◆ SetTypeColorRGB()

void DefaultExport::SetTypeColorRGB ( type_t type,
ColorRGB color )

Set the color for a specific node/edge type.

Parameters
type[in] A valid node/edge type.
color[in] The main color for the type. The label color will be set as a complementary color from the given color to guarantee that it will contrast.

◆ SetTypeLabelAttribute()

void DefaultExport::SetTypeLabelAttribute ( type_t type,
attr_t labelAttr )

Set the attribute that stores the label for a specific node/edge type.

Parameters
type[in] A valid node/edge type.
labelAttr[in] The attribute to use for nodes/edges of this type to get the label. If a valid label can be obttained from the attribute it will be used instead of the default OID.

◆ SubgraphEdges()

bool_t DefaultExport::SubgraphEdges ( Objects & edges)

Limit the exported edges to the edges in the given edges set.

If only the subgraph edges are specified, the exported nodes will be calculated as all the nodes present in the selected edges.

Parameters
edges[in] Subgraph edges to export. Must be kept alive by the user until the export is finished. The given Objects set can also contain nodes, but will be ignored. This is useful to use a signle Objects set to limit both subgraph nodes and edges. But if an Objects containing both nodes and edges is used, then both SubgraphNodes and SubgraphEdges methods must be called.
Returns
Returns true if successful or false otherwise.

◆ SubgraphNodes()

bool_t DefaultExport::SubgraphNodes ( Objects & nodes)

Limit the exported nodes to the nodes in the given node set.

If only the subgraph nodes are specified, the exported edges will be calculated as all the edges between the selected nodes.

Parameters
nodes[in] Subgraph nodes to export. Must be kept alive by the user until the export is finished. The given Objects set can also contain edges, but will be ignored. This is useful to use a signle Objects set to limit both subgraph nodes and edges. But if an Objects containing both nodes and edges is used, then both SubgraphNodes and SubgraphEdges methods must be called.
Returns
Returns true if successful or false otherwise.

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