Doloro GDK 22 .1.0 Beta
by Tauri Interactive
Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph Class Reference

Detailed Description

Side cluster that holds collection of related hyper cells.

Graph vertex address map:

00------------01------------02
| | |
| 30 |
| |
10-----11 Hyper Node 12-----13
| |
| 40 |
| | |
20------------21------------22

Hyper Node: ClusterGraph instance.

Inheritance diagram for Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph:
Collaboration diagram for Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph:

Public Member Functions

void Extend ()
 Extends cluster with a new sub-cluster.
 
GraphNode GetNode (int subclusterId, string rawNodeSign)
 Looking for node related to certain internal sub-cluster. More...
 
void SetGraphAsNetworkContent (GraphsNetwork network, AFragmentGraph content, int cellIdx)
 Connects a graph to the sub-cluster nodes withing GraphsNetwork. More...
 
delegate void GraphsRegistryChangeHandler (Graph oldEntry, Graph newEntry)
 Delegate for an agent that handles. More...
 
virtual Vector3 GetNodePosition (GraphNode node)
 Returns the node's point suggested by the graph logic. More...
 
virtual void SetNodePosition (GraphNode node, Vector3 position)
 Defines world position for the certain graph node. More...
 
virtual GraphNode Add ()
 Adds new GraphNode to the graph. More...
 
void Add (string signature)
 Creates new GraphNode. More...
 
void Add (string signature, out GraphNode node)
 Creates new GraphNode. More...
 
virtual void Add (GraphNode node)
 Adds new node to the graph. More...
 
virtual T Add< T > ()
 Adds new node to the graph. More...
 
virtual T Add< T > (string signature)
 Adds new node to the graph. More...
 
virtual bool Remove (GraphNode node)
 Removing node from the graph. More...
 
virtual bool Remove (string signature)
 Removing node from the graph. More...
 
virtual bool Contains (string nodeSignature)
 Checks is the node included to the graph. More...
 
virtual bool Contains (GraphNode node)
 Checks is the node included to the graph. More...
 
virtual bool TryGetNode (string signature, out GraphNode node)
 Tries to get graph`s node by the signature. More...
 
Connection GetConnection (Guid connectionId)
 Returns descriptor for the Connection by id. More...
 
virtual void GetObjectData (SerializationInfo info, StreamingContext context)
 
override string ToString ()
 Returns graph info. More...
 
void Clear ()
 Clears entire graph from nodes.
 
void CopyTo (GraphNode[] array, int arrayIndex)
 Copies graph nodes of the graph to array. More...
 
void CopyTo (string[] array, int arrayIndex)
 Copies GraphNode.signature entries in graph to array. More...
 
virtual IEnumerator< GraphNode > GetEnumerator ()
 Enumerates nodes withing the graph. More...
 

Static Public Member Functions

static ScalableLineGraph Create (Direction direction)
 Creates a new line graph.
More...
 
static ScalableLineGraph Create (int units, Direction direction)
 Creates a new line graph. More...
 
static string GetNodeAccessKey (int subclusterId, string rawNodeSign)
 Generated node signature along with the internal coord description. More...
 

Protected Member Functions

virtual void SetNavigationMapPattern (int subclusterId)
 Builds the graph by the hyper node map. More...
 
 ScalableLineGraph ()
 Creates new line graph.
 
void OnBinaryDataLoaded ()
 Must be called within ctor(SerializationInfo info, StreamingContext context) after binary data deserialization.
 

Package Functions

 ScalableLineGraph (SerializationInfo info, StreamingContext context)
 Restores object from the binary data. More...
 
void ReleaseConnection (Guid id)
 Releases connection from internal registry. More...
 
void SetConnectionInfo (Connection connection)
 Adds connection info to the registry. More...
 

Properties

int size [get]
 Count of cells in line.
 
Direction direction [get]
 Defines direction of cluster extension. Can be defined only once during initialization.
 
override GraphNode TopEnterNode [get]
 
override GraphNode LeftEnterNode [get]
 
override GraphNode RightEnterNode [get]
 
override GraphNode BottomEnterNode [get]
 
override GraphNode TopEscapeNode [get]
 
override GraphNode LeftEscapeNode [get]
 
override GraphNode RightEscapeNode [get]
 
override GraphNode BottomEscapeNode [get]
 
Guid id [get]
 Id of the graph into internal runtime registry.
 
int Count [get]
 Count of nodes into the graph.
 
int ConnectionsCount [get]
 Count of currently established connections into the graph.
 
GraphNode this[string signature] [get]
 
Dictionary< string, GraphNode > nodes [get]
 Graph navigation map. More...
 
bool IsReadOnly [get]
 Always false.
 

Events

Action< GraphNode > NodeAdded
 Occurs when new node added to the graph via the API.
 
Action< GraphNode > NodeRemoved
 Occurs when new node removed from the graph via the API.
 
static GraphsRegistryChangeHandler GraphObsoleted
 Occurs when registry overridden with a new graph with id that already has been registered. More...
 

Constructor & Destructor Documentation

◆ ScalableLineGraph()

Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph.ScalableLineGraph ( SerializationInfo  info,
StreamingContext  context 
)
package

Restores object from the binary data.

Parameters
info
context

Member Function Documentation

◆ Add() [1/4]

virtual GraphNode Doloro.Graphs.Graph.Add ( )
virtualinherited

Adds new GraphNode to the graph.

Returns
Node instance.

◆ Add() [2/4]

virtual void Doloro.Graphs.Graph.Add ( GraphNode  node)
virtualinherited

Adds new node to the graph.

Parameters
nodeNode to add.

Reimplemented in Doloro.Graphs.Fragmented.GraphsNetwork.

◆ Add() [3/4]

void Doloro.Graphs.Graph.Add ( string  signature)
inherited

Creates new GraphNode.

Parameters
signatureNode signature.

◆ Add() [4/4]

void Doloro.Graphs.Graph.Add ( string  signature,
out GraphNode  node 
)
inherited

Creates new GraphNode.

Parameters
signatureNode signature.
nodeCreated instance.

◆ Add< T >() [1/2]

virtual T Doloro.Graphs.Graph.Add< T > ( )
virtualinherited

Adds new node to the graph.

Template Parameters
TType of node to add.
Returns
Node instance.
Type Constraints
T :GraphNode 
T :new() 

◆ Add< T >() [2/2]

virtual T Doloro.Graphs.Graph.Add< T > ( string  signature)
virtualinherited

Adds new node to the graph.

Template Parameters
TType of node to add.
Parameters
signatureNode signature.
Returns
Node instance.
Type Constraints
T :GraphNode 

◆ Contains() [1/2]

virtual bool Doloro.Graphs.Graph.Contains ( GraphNode  node)
virtualinherited

Checks is the node included to the graph.

Parameters
nodeNode to check.
Returns
Including status.

Reimplemented in Doloro.Graphs.Fragmented.GraphsNetwork.

◆ Contains() [2/2]

virtual bool Doloro.Graphs.Graph.Contains ( string  nodeSignature)
virtualinherited

Checks is the node included to the graph.

Parameters
nodeSignatureGraphNode.signature to search.
Returns
Including status.

Reimplemented in Doloro.Graphs.Fragmented.GraphsNetwork.

◆ CopyTo() [1/2]

void Doloro.Graphs.Graph.CopyTo ( GraphNode[]  array,
int  arrayIndex 
)
inherited

Copies graph nodes of the graph to array.

Parameters
arrayDestination array.
arrayIndexStart index at the destination array.

◆ CopyTo() [2/2]

void Doloro.Graphs.Graph.CopyTo ( string[]  array,
int  arrayIndex 
)
inherited

Copies GraphNode.signature entries in graph to array.

Parameters
arrayDestination array.
arrayIndexInsertion index at destination array.

◆ Create() [1/2]

static ScalableLineGraph Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph.Create ( Direction  direction)
static

Creates a new line graph.

Parameters
directionDefines continues extension direction of the cluster.
Returns
Created graph.

◆ Create() [2/2]

static ScalableLineGraph Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph.Create ( int  units,
Direction  direction 
)
static

Creates a new line graph.

Parameters
directionDefines continues extension direction of the cluster.
unitsAmount of units in graph from a scratch.
Returns
Created graph.

◆ GetConnection()

Connection Doloro.Graphs.Graph.GetConnection ( Guid  connectionId)
inherited

Returns descriptor for the Connection by id.

Parameters
connectionIdId of the connection.
Returns
Instance of connection.

◆ GetEnumerator()

virtual IEnumerator< GraphNode > Doloro.Graphs.Graph.GetEnumerator ( )
virtualinherited

Enumerates nodes withing the graph.

Returns
Nodes enumerator.

◆ GetNode()

GraphNode Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph.GetNode ( int  subclusterId,
string  rawNodeSign 
)

Looking for node related to certain internal sub-cluster.

Parameters
subclusterIdId of sub cluster to access.
rawNodeSignNode code related to uniform cluster.
Returns
Instance of node. null if not registered.

0, "00" - means 00 node of the cluster 0 (first created). 1, "40" - means 40 node of the cluster 1 (first extension).

(OPTIONALY) Some nodes can be absent due to consummation during optimization shells.

◆ GetNodeAccessKey()

static string Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph.GetNodeAccessKey ( int  subclusterId,
string  rawNodeSign 
)
static

Generated node signature along with the internal coord description.

Parameters
subclusterIdId of sub cluster to access.
rawNodeSignNode code related to uniform cluster.
Returns
Instance of node.

0, "00" - means 00 node of the cluster 0 (first created). 1, "40" - means 40 node of the cluster 1 (first extension).

◆ GetNodePosition()

virtual Vector3 Doloro.Graphs.Graph.GetNodePosition ( GraphNode  node)
virtualinherited

Returns the node's point suggested by the graph logic.

Parameters
nodeTarget node.
Returns
World position of the node point.

◆ GraphsRegistryChangeHandler()

delegate void Doloro.Graphs.Graph.GraphsRegistryChangeHandler ( Graph  oldEntry,
Graph  newEntry 
)
inherited

Delegate for an agent that handles.

Parameters
oldEntryEntry that excluded from the registry.
newEntryGraph that applied to the registry instead of an old one.

◆ ReleaseConnection()

void Doloro.Graphs.Graph.ReleaseConnection ( Guid  id)
packageinherited

Releases connection from internal registry.

Parameters
idConnection.id to release.

◆ Remove() [1/2]

virtual bool Doloro.Graphs.Graph.Remove ( GraphNode  node)
virtualinherited

Removing node from the graph.

Parameters
nodeNode to release.
Returns
Is the node successfully has been removed from the graph.

Reimplemented in Doloro.Graphs.Fragmented.GraphsNetwork.

◆ Remove() [2/2]

virtual bool Doloro.Graphs.Graph.Remove ( string  signature)
virtualinherited

Removing node from the graph.

Parameters
signatureSignature of the node to release.
Returns
Is the node successfully has been removed from the graph.

Reimplemented in Doloro.Graphs.Fragmented.GraphsNetwork.

◆ SetConnectionInfo()

void Doloro.Graphs.Graph.SetConnectionInfo ( Connection  connection)
packageinherited

Adds connection info to the registry.

Parameters
connectionConnection to add.

◆ SetGraphAsNetworkContent()

void Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph.SetGraphAsNetworkContent ( GraphsNetwork  network,
AFragmentGraph  content,
int  cellIdx 
)

Connects a graph to the sub-cluster nodes withing GraphsNetwork.

Parameters
networkOperating network that handles cross-graphs connections.
contentGraph to apply as sub-cluster content.
cellIdxIndex of the graph's sub-cluster.

◆ SetNavigationMapPattern()

virtual void Doloro.UIEngine2.Modules.Graphs.ScalableLineGraph.SetNavigationMapPattern ( int  subclusterId)
protectedvirtual

Builds the graph by the hyper node map.

Parameters
subclusterIdId of the sub-cluster to map ids generation.
graphIn case if null, creates new graph.. Otherwise extends predefined one.

◆ SetNodePosition()

virtual void Doloro.Graphs.Graph.SetNodePosition ( GraphNode  node,
Vector3  position 
)
virtualinherited

Defines world position for the certain graph node.

Parameters
nodeNode to position declare.
positionWorld position related to the node.

◆ ToString()

override string Doloro.Graphs.Graph.ToString ( )
inherited

Returns graph info.

Returns
String representation of graph instance.

◆ TryGetNode()

virtual bool Doloro.Graphs.Graph.TryGetNode ( string  signature,
out GraphNode  node 
)
virtualinherited

Tries to get graph`s node by the signature.

Parameters
signatureGraphNode.signature as access key.
nodeNode instance if found.
Returns
Search result.

Property Documentation

◆ nodes

Dictionary<string, GraphNode> Doloro.Graphs.Graph.nodes
getpackageinherited

Graph navigation map.

string - GraphNode.signature <see cref="GraphNode"/> - node instance.

Event Documentation

◆ GraphObsoleted

GraphsRegistryChangeHandler Doloro.Graphs.Graph.GraphObsoleted
staticinherited

Occurs when registry overridden with a new graph with id that already has been registered.

Could occur when you loading the graph that has been loaded up to the moment from the binary data.


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