SNAP Library 6.0, User Reference
2020-12-09 16:24:20
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
|
Directed multigraph with node edge attributes. More...
#include <network.h>
Inherited by TModeNet.
Classes | |
class | LoadHashOfVecFunctor |
class | LoadTNodeFunctor |
class | LoadVecFunctor |
class | LoadVecOfVecFunctor |
class | TAFltI |
Node/edge float attribute iterator. Iterates through all nodes/edges for one float attribute. More... | |
class | TAFltVI |
class | TAIntI |
Node/edge integer attribute iterator. Iterates through all nodes/edges for one integer attribute. More... | |
class | TAIntVI |
class | TAStrI |
Node/edge string attribute iterator. Iterates through all nodes/edges for one string attribute. More... | |
class | TEdge |
class | TEdgeI |
Edge iterator. Only forward iteration (operator++) is supported. More... | |
class | TNode |
class | TNodeI |
Node iterator. Only forward iteration (operator++) is supported. More... | |
Public Types | |
typedef TNEANet | TNet |
typedef TPt< TNEANet > | PNet |
Public Member Functions | |
TNEANet () | |
TNEANet (const int &Nodes, const int &Edges) | |
Constructor that reserves enough memory for a graph of nodes and edges. More... | |
TNEANet (const TNEANet &Graph) | |
TNEANet (TSIn &SIn) | |
Constructor for loading the graph from a (binary) stream SIn. More... | |
void | Save (TSOut &SOut) const |
Saves the graph to a (binary) stream SOut. Expects data structures for sparse attributes. More... | |
void | Save_V1 (TSOut &SOut) const |
Saves the graph to a (binary) stream SOut. Available for backwards compatibility. More... | |
void | Save_V2 (TSOut &SOut) const |
Saves the graph without any sparse data structures. Available for backwards compatibility. More... | |
void | LoadNetworkShM (TShMIn &ShMIn) |
load network from shared memory for this network More... | |
void | ConvertToSparse () |
bool | HasFlag (const TGraphFlag &Flag) const |
Allows for run-time checking the type of the graph (see the TGraphFlag for flags). More... | |
TNEANet & | operator= (const TNEANet &Graph) |
int | GetNodes () const |
Returns the number of nodes in the network. More... | |
int | AddNode (int NId=-1) |
Adds a node of ID NId to the network. More... | |
int | AddNodeUnchecked (int NId=-1) |
Adds a node of ID NId to the network, noop if the node already exists. More... | |
int | AddNode (const TNodeI &NodeI) |
Adds a node of ID NodeI.GetId() to the graph. More... | |
virtual void | DelNode (const int &NId) |
Deletes node of ID NId from the graph. More... | |
void | DelNode (const TNode &NodeI) |
Deletes node of ID NodeI.GetId() from the graph. More... | |
bool | IsNode (const int &NId) const |
Tests whether ID NId is a node. More... | |
TNodeI | BegNI () const |
Returns an iterator referring to the first node in the graph. More... | |
TNodeI | EndNI () const |
Returns an iterator referring to the past-the-end node in the graph. More... | |
TNodeI | GetNI (const int &NId) const |
Returns an iterator referring to the node of ID NId in the graph. More... | |
TAIntI | BegNAIntI (const TStr &attr) const |
Returns an iterator referring to the first node's int attribute. More... | |
TAIntI | EndNAIntI (const TStr &attr) const |
Returns an iterator referring to the past-the-end node's attribute. More... | |
TAIntI | GetNAIntI (const TStr &attr, const int &NId) const |
Returns an iterator referring to the node of ID NId in the graph. More... | |
TAIntVI | BegNAIntVI (const TStr &attr) const |
Returns an iterator referring to the first node's int attribute. More... | |
TAIntVI | EndNAIntVI (const TStr &attr) const |
Returns an iterator referring to the past-the-end node's attribute. More... | |
TAIntVI | GetNAIntVI (const TStr &attr, const int &NId) const |
Returns an iterator referring to the node of ID NId in the graph. More... | |
TAFltVI | BegNAFltVI (const TStr &attr) const |
Returns an iterator referring to the first node's flt attribute. More... | |
TAFltVI | EndNAFltVI (const TStr &attr) const |
Returns an iterator referring to the past-the-end node's attribute. More... | |
TAFltVI | GetNAFltVI (const TStr &attr, const int &NId) const |
Returns an iterator referring to the node of ID NId in the graph. More... | |
TAStrI | BegNAStrI (const TStr &attr) const |
Returns an iterator referring to the first node's str attribute. More... | |
TAStrI | EndNAStrI (const TStr &attr) const |
Returns an iterator referring to the past-the-end node's attribute. More... | |
TAStrI | GetNAStrI (const TStr &attr, const int &NId) const |
Returns an iterator referring to the node of ID NId in the graph. More... | |
TAFltI | BegNAFltI (const TStr &attr) const |
Returns an iterator referring to the first node's flt attribute. More... | |
TAFltI | EndNAFltI (const TStr &attr) const |
Returns an iterator referring to the past-the-end node's attribute. More... | |
TAFltI | GetNAFltI (const TStr &attr, const int &NId) const |
Returns an iterator referring to the node of ID NId in the graph. More... | |
void | AttrNameNI (const TInt &NId, TStrV &Names) const |
Returns a vector of attr names for node NId. More... | |
void | AttrNameNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Names) const |
void | AttrValueNI (const TInt &NId, TStrV &Values) const |
Returns a vector of attr values for node NId. More... | |
void | AttrValueNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Values) const |
void | IntAttrNameNI (const TInt &NId, TStrV &Names) const |
Returns a vector of int attr names for node NId. More... | |
void | IntAttrNameNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Names) const |
void | IntAttrValueNI (const TInt &NId, TIntV &Values) const |
Returns a vector of attr values for node NId. More... | |
void | IntAttrValueNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TIntV &Values) const |
void | IntVAttrNameNI (const TInt &NId, TStrV &Names) const |
Returns a vector of int attr names for node NId. More... | |
void | IntVAttrNameNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Names) const |
void | IntVAttrValueNI (const TInt &NId, TVec< TIntV > &Values) const |
Returns a vector of attr values for node NId. More... | |
void | IntVAttrValueNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TVec< TIntV > &Values) const |
void | FltVAttrNameNI (const TInt &NId, TStrV &Names) const |
Returns a vector of flt attr names for node NId. More... | |
void | FltVAttrNameNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Names) const |
void | FltVAttrValueNI (const TInt &NId, TVec< TFltV > &Values) const |
Returns a vector of flt values for node NId. More... | |
void | FltVAttrValueNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TVec< TFltV > &Values) const |
void | StrAttrNameNI (const TInt &NId, TStrV &Names) const |
Returns a vector of str attr names for node NId. More... | |
void | StrAttrNameNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Names) const |
void | StrAttrValueNI (const TInt &NId, TStrV &Values) const |
Returns a vector of attr values for node NId. More... | |
void | StrAttrValueNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Values) const |
void | FltAttrNameNI (const TInt &NId, TStrV &Names) const |
Returns a vector of int attr names for node NId. More... | |
void | FltAttrNameNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TStrV &Names) const |
void | FltAttrValueNI (const TInt &NId, TFltV &Values) const |
Returns a vector of attr values for node NId. More... | |
void | FltAttrValueNI (const TInt &NId, TStrIntPrH::TIter NodeHI, TFltV &Values) const |
void | AttrNameEI (const TInt &EId, TStrV &Names) const |
Returns a vector of attr names for edge EId. More... | |
void | AttrNameEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Names) const |
void | AttrValueEI (const TInt &EId, TStrV &Values) const |
Returns a vector of attr values for edge EId. More... | |
void | AttrValueEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Values) const |
void | IntAttrNameEI (const TInt &EId, TStrV &Names) const |
Returns a vector of int attr names for edge EId. More... | |
void | IntAttrNameEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Names) const |
void | IntAttrValueEI (const TInt &EId, TIntV &Values) const |
Returns a vector of attr values for edge EId. More... | |
void | IntAttrValueEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TIntV &Values) const |
void | IntVAttrNameEI (const TInt &EId, TStrV &Names) const |
Returns a vector of int attr names for edge EId. More... | |
void | IntVAttrNameEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Names) const |
void | IntVAttrValueEI (const TInt &EId, TVec< TIntV > &Values) const |
Returns a vector of attr values for edge EId. More... | |
void | IntVAttrValueEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TVec< TIntV > &Values) const |
void | FltVAttrNameEI (const TInt &EId, TStrV &Names) const |
Returns a vector of flt attr names for edge EId. More... | |
void | FltVAttrNameEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Names) const |
void | FltVAttrValueEI (const TInt &EId, TVec< TFltV > &Values) const |
Returns a vector of attr values for edge EId. More... | |
void | FltVAttrValueEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TVec< TFltV > &Values) const |
void | StrAttrNameEI (const TInt &EId, TStrV &Names) const |
Returns a vector of str attr names for node NId. More... | |
void | StrAttrNameEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Names) const |
void | StrAttrValueEI (const TInt &EId, TStrV &Values) const |
Returns a vector of attr values for node NId. More... | |
void | StrAttrValueEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Values) const |
void | FltAttrNameEI (const TInt &EId, TStrV &Names) const |
Returns a vector of int attr names for node NId. More... | |
void | FltAttrNameEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TStrV &Names) const |
void | FltAttrValueEI (const TInt &EId, TFltV &Values) const |
Returns a vector of attr values for node NId. More... | |
void | FltAttrValueEI (const TInt &EId, TStrIntPrH::TIter EdgeHI, TFltV &Values) const |
TAIntI | BegEAIntI (const TStr &attr) const |
Returns an iterator referring to the first edge's int attribute. More... | |
TAIntI | EndEAIntI (const TStr &attr) const |
Returns an iterator referring to the past-the-end edge's attribute. More... | |
TAIntI | GetEAIntI (const TStr &attr, const int &EId) const |
Returns an iterator referring to the edge of ID EId in the graph. More... | |
TAIntVI | BegEAIntVI (const TStr &attr) const |
Returns an iterator referring to the first edge's int attribute. More... | |
TAIntVI | EndEAIntVI (const TStr &attr) const |
Returns an iterator referring to the past-the-end edge's attribute. More... | |
TAIntVI | GetEAIntVI (const TStr &attr, const int &EId) const |
Returns an iterator referring to the edge of ID EId in the graph. More... | |
TAFltVI | BegEAFltVI (const TStr &attr) const |
Returns an iterator referring to the first edge's int attribute. More... | |
TAFltVI | EndEAFltVI (const TStr &attr) const |
Returns an iterator referring to the past-the-end edge's attribute. More... | |
TAFltVI | GetEAFltVI (const TStr &attr, const int &EId) const |
Returns an iterator referring to the edge of ID EId in the graph. More... | |
TAStrI | BegEAStrI (const TStr &attr) const |
Returns an iterator referring to the first edge's str attribute. More... | |
TAStrI | EndEAStrI (const TStr &attr) const |
Returns an iterator referring to the past-the-end edge's attribute. More... | |
TAStrI | GetEAStrI (const TStr &attr, const int &EId) const |
Returns an iterator referring to the edge of ID EId in the graph. More... | |
TAFltI | BegEAFltI (const TStr &attr) const |
Returns an iterator referring to the first edge's flt attribute. More... | |
TAFltI | EndEAFltI (const TStr &attr) const |
Returns an iterator referring to the past-the-end edge's attribute. More... | |
TAFltI | GetEAFltI (const TStr &attr, const int &EId) const |
Returns an iterator referring to the edge of ID EId in the graph. More... | |
int | GetMxNId () const |
Returns an ID that is larger than any node ID in the network. More... | |
int | GetMxEId () const |
Returns an ID that is larger than any edge ID in the network. More... | |
int | GetEdges () const |
Returns the number of edges in the graph. More... | |
int | AddEdge (const int &SrcNId, const int &DstNId, int EId=-1) |
Adds an edge with ID EId between node IDs SrcNId and DstNId to the graph. More... | |
int | AddEdge (const TEdgeI &EdgeI) |
Adds an edge between EdgeI.GetSrcNId() and EdgeI.GetDstNId() to the graph. More... | |
void | DelEdge (const int &EId) |
Deletes an edge with edge ID EId from the graph. More... | |
void | DelEdge (const int &SrcNId, const int &DstNId, const bool &IsDir=true) |
Deletes all edges between node IDs SrcNId and DstNId from the graph. More... | |
bool | IsEdge (const int &EId) const |
Tests whether an edge with edge ID EId exists in the graph. More... | |
bool | IsEdge (const int &SrcNId, const int &DstNId, const bool &IsDir=true) const |
Tests whether an edge between node IDs SrcNId and DstNId exists in the graph. More... | |
bool | IsEdge (const int &SrcNId, const int &DstNId, int &EId, const bool &IsDir=true) const |
Tests whether an edge between node IDs SrcNId and DstNId exists in the graph. if an edge exists, return its edge ID in EId. More... | |
int | GetEId (const int &SrcNId, const int &DstNId) const |
Returns an edge ID between node IDs SrcNId and DstNId, if such an edge exists. Otherwise, return -1. More... | |
TEdgeI | BegEI () const |
Returns an iterator referring to the first edge in the graph. More... | |
TEdgeI | EndEI () const |
Returns an iterator referring to the past-the-end edge in the graph. More... | |
TEdgeI | GetEI (const int &EId) const |
Returns an iterator referring to edge with edge ID EId. More... | |
TEdgeI | GetEI (const int &SrcNId, const int &DstNId) const |
Returns an iterator referring to edge (SrcNId, DstNId) in the graph. More... | |
int | GetRndNId (TRnd &Rnd=TInt::Rnd) |
Returns an ID of a random node in the graph. More... | |
TNodeI | GetRndNI (TRnd &Rnd=TInt::Rnd) |
Returns an interator referring to a random node in the graph. More... | |
int | GetRndEId (TRnd &Rnd=TInt::Rnd) |
Returns an ID of a random edge in the graph. More... | |
TEdgeI | GetRndEI (TRnd &Rnd=TInt::Rnd) |
Returns an interator referring to a random edge in the graph. More... | |
void | GetNIdV (TIntV &NIdV) const |
Gets a vector IDs of all nodes in the graph. More... | |
void | GetEIdV (TIntV &EIdV) const |
Gets a vector IDs of all edges in the graph. More... | |
bool | Empty () const |
Tests whether the graph is empty (has zero nodes). More... | |
void | Clr () |
Deletes all nodes and edges from the graph. More... | |
void | Reserve (const int &Nodes, const int &Edges) |
Reserves memory for a graph of Nodes nodes and Edges edges. More... | |
void | Defrag (const bool &OnlyNodeLinks=false) |
Defragments the graph. More... | |
bool | IsOk (const bool &ThrowExcept=true) const |
Checks the graph data structure for internal consistency. More... | |
void | Dump (FILE *OutF=stdout) const |
Print the graph in a human readable form to an output stream OutF. More... | |
int | AddIntAttrDatN (const TNodeI &NodeI, const TInt &value, const TStr &attr) |
Attribute based add function for attr to Int value. More... | |
int | AddIntAttrDatN (const int &NId, const TInt &value, const TStr &attr) |
int | AddStrAttrDatN (const TNodeI &NodeI, const TStr &value, const TStr &attr) |
Attribute based add function for attr to Str value. More... | |
int | AddStrAttrDatN (const int &NId, const TStr &value, const TStr &attr) |
int | AddFltAttrDatN (const TNodeI &NodeI, const TFlt &value, const TStr &attr) |
Attribute based add function for attr to Flt value. More... | |
int | AddFltAttrDatN (const int &NId, const TFlt &value, const TStr &attr) |
int | AddIntVAttrDatN (const TNodeI &NodeI, const TIntV &value, const TStr &attr) |
Attribute based add function for attr to IntV value. More... | |
int | AddIntVAttrDatN (const int &NId, const TIntV &value, const TStr &attr, TBool UseDense=true) |
int | AddFltVAttrDatN (const TNodeI &NodeI, const TFltV &value, const TStr &attr) |
Attribute based add function for attr to FltV value. More... | |
int | AddFltVAttrDatN (const int &NId, const TFltV &value, const TStr &attr, TBool UseDense=true) |
int | AppendIntVAttrDatN (const TNodeI &NodeI, const TInt &value, const TStr &attr) |
Appends value onto the TIntV attribute for the given node. More... | |
int | AppendIntVAttrDatN (const int &NId, const TInt &value, const TStr &attr, TBool UseDense=true) |
int | DelFromIntVAttrDatN (const TNodeI &NodeI, const TInt &value, const TStr &attr) |
Deletes value from the TIntV attribute for the given node. More... | |
int | DelFromIntVAttrDatN (const int &NId, const TInt &value, const TStr &attr) |
int | AppendFltVAttrDatN (const TNodeI &NodeI, const TFlt &value, const TStr &attr) |
Appends value onto the TFltV attribute for the given node. More... | |
int | AppendFltVAttrDatN (const int &NId, const TFlt &value, const TStr &attr, TBool UseDense=true) |
int | DelFromFltVAttrDatN (const TNodeI &NodeI, const TFlt &value, const TStr &attr) |
Deletes value from the TFltV attribute for the given node. More... | |
int | DelFromFltVAttrDatN (const int &NId, const TFlt &value, const TStr &attr) |
int | AddIntAttrDatE (const TEdgeI &EdgeI, const TInt &value, const TStr &attr) |
Attribute based add function for attr to Int value. More... | |
int | AddIntAttrDatE (const int &EId, const TInt &value, const TStr &attr) |
int | AddStrAttrDatE (const TEdgeI &EdgeI, const TStr &value, const TStr &attr) |
Attribute based add function for attr to Str value. More... | |
int | AddStrAttrDatE (const int &EId, const TStr &value, const TStr &attr) |
int | AddFltAttrDatE (const TEdgeI &EdgeI, const TFlt &value, const TStr &attr) |
Attribute based add function for attr to Flt value. More... | |
int | AddFltAttrDatE (const int &EId, const TFlt &value, const TStr &attr) |
int | AddIntVAttrDatE (const TEdgeI &EdgeI, const TIntV &value, const TStr &attr) |
Attribute based add function for attr to IntV value. More... | |
int | AddIntVAttrDatE (const int &EId, const TIntV &value, const TStr &attr, TBool UseDense=true) |
int | AppendIntVAttrDatE (const TEdgeI &EdgeI, const TInt &value, const TStr &attr) |
Appends value onto the TIntV attribute for the given node. More... | |
int | AppendIntVAttrDatE (const int &EId, const TInt &value, const TStr &attr, TBool UseDense=true) |
int | AddFltVAttrDatE (const TEdgeI &EdgeI, const TFltV &value, const TStr &attr) |
Attribute based add function for attr to TFltV value. More... | |
int | AddFltVAttrDatE (const int &EId, const TFltV &value, const TStr &attr, TBool UseDense=true) |
int | AppendFltVAttrDatE (const TEdgeI &EdgeI, const TFlt &value, const TStr &attr) |
Appends value onto the TFltV attribute for the given node. More... | |
int | AppendFltVAttrDatE (const int &EId, const TFlt &value, const TStr &attr, TBool UseDense=true) |
TInt | GetIntAttrDatN (const TNodeI &NodeI, const TStr &attr) |
Gets the value of int attr from the node attr value vector. More... | |
TInt | GetIntAttrDatN (const int &NId, const TStr &attr) |
TStr | GetStrAttrDatN (const TNodeI &NodeI, const TStr &attr) |
Gets the value of str attr from the node attr value vector. More... | |
TStr | GetStrAttrDatN (const int &NId, const TStr &attr) |
TFlt | GetFltAttrDatN (const TNodeI &NodeI, const TStr &attr) |
Gets the value of flt attr from the node attr value vector. More... | |
TFlt | GetFltAttrDatN (const int &NId, const TStr &attr) |
TIntV | GetIntVAttrDatN (const TNodeI &NodeI, const TStr &attr) const |
Gets the value of the intv attr from the node attr value vector. More... | |
TIntV | GetIntVAttrDatN (const int &NId, const TStr &attr) const |
TFltV | GetFltVAttrDatN (const TNodeI &NodeI, const TStr &attr) const |
Gets the value of the fltv attr from the node attr value vector. More... | |
TFltV | GetFltVAttrDatN (const int &NId, const TStr &attr) const |
int | GetIntAttrIndN (const TStr &attr) |
Gets the index of the node attr value vector specified by attr (same as GetAttrIndN for compatibility reasons). More... | |
int | GetAttrIndN (const TStr &attr) |
Gets the index of the node attr value vector specified by attr . More... | |
TInt | GetIntAttrIndDatN (const TNodeI &NodeI, const int &index) |
Gets the value of an int node attr specified by node iterator NodeI and the attr index . More... | |
TInt | GetIntAttrIndDatN (const int &NId, const int &index) |
Gets the value of an int node attr specified by node ID NId and the attr index . More... | |
TStr | GetStrAttrIndDatN (const TNodeI &NodeI, const int &index) |
Gets the value of a string node attr specified by node iterator NodeI and the attr index . More... | |
TStr | GetStrAttrIndDatN (const int &NId, const int &index) |
Gets the value of a string node attr specified by node ID NId and the attr index . More... | |
TFlt | GetFltAttrIndDatN (const TNodeI &NodeI, const int &index) |
Gets the value of a float node attr specified by node iterator NodeI and the attr index . More... | |
TFlt | GetFltAttrIndDatN (const int &NId, const int &index) |
Gets the value of a float node attr specified by node ID NId and the attr index . More... | |
TInt | GetIntAttrDatE (const TEdgeI &EdgeI, const TStr &attr) |
Gets the value of int attr from the edge attr value vector. More... | |
TInt | GetIntAttrDatE (const int &EId, const TStr &attr) |
TStr | GetStrAttrDatE (const TEdgeI &EdgeI, const TStr &attr) |
Gets the value of str attr from the edge attr value vector. More... | |
TStr | GetStrAttrDatE (const int &EId, const TStr &attr) |
TFlt | GetFltAttrDatE (const TEdgeI &EdgeI, const TStr &attr) |
Gets the value of flt attr from the edge attr value vector. More... | |
TFlt | GetFltAttrDatE (const int &EId, const TStr &attr) |
TIntV | GetIntVAttrDatE (const TEdgeI &EdgeI, const TStr &attr) |
Gets the value of the intv attr from the edge attr value vector. More... | |
TIntV | GetIntVAttrDatE (const int &EId, const TStr &attr) |
TFltV | GetFltVAttrDatE (const TEdgeI &EdgeI, const TStr &attr) |
Gets the value of the fltv attr from the edge attr value vector. More... | |
TFltV | GetFltVAttrDatE (const int &EId, const TStr &attr) |
int | GetIntAttrIndE (const TStr &attr) |
Gets the index of the edge attr value vector specified by attr (same as GetAttrIndE for compatibility reasons). More... | |
int | GetAttrIndE (const TStr &attr) |
Gets the index of the edge attr value vector specified by attr . More... | |
TInt | GetIntAttrIndDatE (const TEdgeI &EdgeI, const int &index) |
Gets the value of an int edge attr specified by edge iterator EdgeI and the attr index . More... | |
TInt | GetIntAttrIndDatE (const int &EId, const int &index) |
Gets the value of an int edge attr specified by edge ID EId and the attr index . More... | |
TFlt | GetFltAttrIndDatE (const TEdgeI &EdgeI, const int &index) |
Gets the value of a float edge attr specified by edge iterator EdgeI and the attr index . More... | |
TFlt | GetFltAttrIndDatE (const int &EId, const int &index) |
Gets the value of an int edge attr specified by edge ID EId and the attr index . More... | |
TStr | GetStrAttrIndDatE (const TEdgeI &EdgeI, const int &index) |
Gets the value of a string edge attr specified by edge iterator EdgeI and the attr index . More... | |
TStr | GetStrAttrIndDatE (const int &EId, const int &index) |
Gets the value of an int edge attr specified by edge ID EId and the attr index . More... | |
int | DelAttrDatN (const TNodeI &NodeI, const TStr &attr) |
Deletes the node attribute for NodeI. More... | |
int | DelAttrDatN (const int &NId, const TStr &attr) |
int | DelAttrDatE (const TEdgeI &EdgeI, const TStr &attr) |
Deletes the edge attribute for NodeI. More... | |
int | DelAttrDatE (const int &EId, const TStr &attr) |
int | AddIntAttrN (const TStr &attr, TInt defaultValue=TInt::Mn) |
Adds a new Int node attribute to the hashmap. More... | |
int | AddStrAttrN (const TStr &attr, TStr defaultValue=TStr::GetNullStr()) |
Adds a new Str node attribute to the hashmap. More... | |
int | AddFltAttrN (const TStr &attr, TFlt defaultValue=TFlt::Mn) |
Adds a new Flt node attribute to the hashmap. More... | |
int | AddIntVAttrN (const TStr &attr, TBool UseDense=true) |
Adds a new IntV node attribute to the hashmap. More... | |
int | AddFltVAttrN (const TStr &attr, TBool UseDense=true) |
Adds a new FltV node attribute to the hashmap. More... | |
int | AddIntAttrE (const TStr &attr, TInt defaultValue=TInt::Mn) |
Adds a new Int edge attribute to the hashmap. More... | |
int | AddStrAttrE (const TStr &attr, TStr defaultValue=TStr::GetNullStr()) |
Adds a new Str edge attribute to the hashmap. More... | |
int | AddFltAttrE (const TStr &attr, TFlt defaultValue=TFlt::Mn) |
Adds a new Flt edge attribute to the hashmap. More... | |
int | AddIntVAttrE (const TStr &attr, TBool UseDense=true) |
Adds a new IntV edge attribute to the hashmap. More... | |
int | AddFltVAttrE (const TStr &attr, TBool UseDense=true) |
Adds a new FltV edge attribute to the hashmap. More... | |
int | DelAttrN (const TStr &attr) |
Removes all the values for node attr. More... | |
int | DelAttrE (const TStr &attr) |
Removes all the values for edge attr. More... | |
bool | IsAttrDeletedN (const int &NId, const TStr &attr) const |
Returns true if attr exists for node NId and has default value. More... | |
bool | IsIntAttrDeletedN (const int &NId, const TStr &attr) const |
Returns true if Int attr exists for node NId and has default value. More... | |
bool | IsIntVAttrDeletedN (const int &NId, const TStr &attr) const |
Returns true if IntV attr exists for node NId and is an empty vector. More... | |
bool | IsFltVAttrDeletedN (const int &NId, const TStr &attr) const |
Returns true if FltV attr exists for node NId and is an empty vector. More... | |
bool | IsStrAttrDeletedN (const int &NId, const TStr &attr) const |
Returns true if Str attr exists for node NId and has default value. More... | |
bool | IsFltAttrDeletedN (const int &NId, const TStr &attr) const |
Returns true if Flt attr exists for node NId and has default value. More... | |
bool | NodeAttrIsDeleted (const int &NId, const TStrIntPrH::TIter &NodeHI) const |
Returns true if NId attr deleted for current node attr iterator. More... | |
bool | NodeAttrIsIntDeleted (const int &NId, const TStrIntPrH::TIter &NodeHI) const |
Returns true if NId attr deleted value for current node int attr iterator. More... | |
bool | NodeAttrIsIntVDeleted (const int &NId, const TStrIntPrH::TIter &NodeHI) const |
Returns true if NId attr deleted value for current node int vector attr iterator. More... | |
bool | NodeAttrIsFltVDeleted (const int &NId, const TStrIntPrH::TIter &NodeHI) const |
Returns true if NId attr deleted value for current node int vector attr iterator. More... | |
bool | NodeAttrIsStrDeleted (const int &NId, const TStrIntPrH::TIter &NodeHI) const |
Returns true if NId attr deleted value for current node str attr iterator. More... | |
bool | NodeAttrIsFltDeleted (const int &NId, const TStrIntPrH::TIter &NodeHI) const |
Returns true if NId attr deleted value for current node flt attr iterator. More... | |
bool | IsAttrDeletedE (const int &EId, const TStr &attr) const |
Returns true if attr exists for edge EId and has default value. More... | |
bool | IsIntAttrDeletedE (const int &EId, const TStr &attr) const |
Returns true if Int attr exists for edge EId and has default value. More... | |
bool | IsIntVAttrDeletedE (const int &EId, const TStr &attr) const |
Returns true if IntV attr exists for edge EId and is an empty vector. More... | |
bool | IsFltVAttrDeletedE (const int &EId, const TStr &attr) const |
Returns true if FltV attr exists for edge EId and is an empty vector. More... | |
bool | IsStrAttrDeletedE (const int &EId, const TStr &attr) const |
Returns true if Str attr exists for edge NId and has default value. More... | |
bool | IsFltAttrDeletedE (const int &EId, const TStr &attr) const |
Returns true if Flt attr exists for edge NId and has default value. More... | |
bool | EdgeAttrIsDeleted (const int &EId, const TStrIntPrH::TIter &EdgeHI) const |
Returns true if EId attr deleted for current edge attr iterator. More... | |
bool | EdgeAttrIsIntDeleted (const int &EId, const TStrIntPrH::TIter &EdgeHI) const |
Returns true if EId attr deleted for current edge int attr iterator. More... | |
bool | EdgeAttrIsIntVDeleted (const int &EId, const TStrIntPrH::TIter &EdgeHI) const |
Returns true if EId attr deleted for current edge int vector attr iterator. More... | |
bool | EdgeAttrIsFltVDeleted (const int &EId, const TStrIntPrH::TIter &EdgeHI) const |
Returns true if EId attr deleted for current edge flt vector attr iterator. More... | |
bool | EdgeAttrIsStrDeleted (const int &EId, const TStrIntPrH::TIter &EdgeHI) const |
Returns true if EId attr deleted for current edge str attr iterator. More... | |
bool | EdgeAttrIsFltDeleted (const int &EId, const TStrIntPrH::TIter &EdgeHI) const |
Returns true if EId attr deleted for current edge flt attr iterator. More... | |
TStr | GetNodeAttrValue (const int &NId, const TStrIntPrH::TIter &NodeHI) const |
Returns node attribute value, converted to Str type. More... | |
TStr | GetEdgeAttrValue (const int &EId, const TStrIntPrH::TIter &EdgeHI) const |
Returns edge attribute value, converted to Str type. More... | |
TFlt | GetWeightOutEdges (const TNodeI &NI, const TStr &attr) |
Gets the sum of the weights of all the outgoing edges of the node. More... | |
bool | IsFltAttrE (const TStr &attr) |
Checks if there is an edge attribute with name attr. More... | |
bool | IsIntAttrE (const TStr &attr) |
Checks if there is an edge attribute with name attr. More... | |
bool | IsStrAttrE (const TStr &attr) |
Checks if there is an edge attribute with name attr. More... | |
TVec< TFlt > & | GetFltAttrVecE (const TStr &attr) |
Gets Vector for the Flt Attribute attr. More... | |
int | GetFltKeyIdE (const int &EId) |
Gets keyid for edge with id EId. More... | |
void | GetWeightOutEdgesV (TFltV &OutWeights, const TFltV &AttrVal) |
Fills OutWeights with the outgoing weight from each node. More... | |
void | GetAttrNNames (TStrV &IntAttrNames, TStrV &FltAttrNames, TStrV &StrAttrNames) const |
Fills each of the vectors with the names of node attributes of the given type. More... | |
void | GetAttrENames (TStrV &IntAttrNames, TStrV &FltAttrNames, TStrV &StrAttrNames) const |
Fills each of the vectors with the names of edge attributes of the given type. More... | |
int | AddSAttrDatN (const TInt &NId, const TStr &AttrName, const TInt &Val) |
Adds Int sparse attribute with name AttrName to the given node with id NId . More... | |
int | AddSAttrDatN (const TInt &NId, const TInt &AttrId, const TInt &Val) |
Adds Int sparse attribute with id AttrId to the given node with id NId . More... | |
int | AddSAttrDatN (const TNodeI &NodeI, const TStr &AttrName, const TInt &Val) |
Adds Int sparse attribute with name AttrName to NodeI . More... | |
int | AddSAttrDatN (const TNodeI &NodeI, const TInt &AttrId, const TInt &Val) |
Adds Int sparse attribute with id AttrId to NodeI . More... | |
int | AddSAttrDatN (const TInt &NId, const TStr &AttrName, const TFlt &Val) |
Adds Flt sparse attribute with name AttrName to the given node with id NId . More... | |
int | AddSAttrDatN (const TInt &NId, const TInt &AttrId, const TFlt &Val) |
Adds Flt sparse attribute with id AttrId to the given node with id NId . More... | |
int | AddSAttrDatN (const TNodeI &NodeI, const TStr &AttrName, const TFlt &Val) |
Adds Flt sparse attribute with name AttrName to NodeI . More... | |
int | AddSAttrDatN (const TNodeI &NodeI, const TInt &AttrId, const TFlt &Val) |
Adds Flt sparse attribute with id AttrId to NodeI . More... | |
int | AddSAttrDatN (const TInt &NId, const TStr &AttrName, const TStr &Val) |
Adds Str sparse attribute with name AttrName to the given node with id NId . More... | |
int | AddSAttrDatN (const TInt &NId, const TInt &AttrId, const TStr &Val) |
Adds Str sparse attribute with id AttrId to the given node with id NId . More... | |
int | AddSAttrDatN (const TNodeI &NodeI, const TStr &AttrName, const TStr &Val) |
Adds Str sparse attribute with name AttrName to NodeI . More... | |
int | AddSAttrDatN (const TNodeI &NodeI, const TInt &AttrId, const TStr &Val) |
Adds Str sparse attribute with id AttrId to NodeI . More... | |
int | GetSAttrDatN (const TInt &NId, const TStr &AttrName, TInt &ValX) const |
Gets Int sparse attribute with name AttrName from node with id NId . More... | |
int | GetSAttrDatN (const TInt &NId, const TInt &AttrId, TInt &ValX) const |
Gets Int sparse attribute with id AttrId from node with id NId . More... | |
int | GetSAttrDatN (const TNodeI &NodeI, const TStr &AttrName, TInt &ValX) const |
Gets Int sparse attribute with name AttrName from NodeI . More... | |
int | GetSAttrDatN (const TNodeI &NodeI, const TInt &AttrId, TInt &ValX) const |
Gets Int sparse attribute with id AttrId from NodeI . More... | |
int | GetSAttrDatN (const TInt &NId, const TStr &AttrName, TFlt &ValX) const |
Gets Flt sparse attribute with name AttrName from node with id NId . More... | |
int | GetSAttrDatN (const TInt &NId, const TInt &AttrId, TFlt &ValX) const |
Gets Flt sparse attribute with id AttrId from node with id NId . More... | |
int | GetSAttrDatN (const TNodeI &NodeI, const TStr &AttrName, TFlt &ValX) const |
Gets Flt sparse attribute with name AttrName from NodeI . More... | |
int | GetSAttrDatN (const TNodeI &NodeI, const TInt &AttrId, TFlt &ValX) const |
Gets Flt sparse attribute with id AttrId from NodeI . More... | |
int | GetSAttrDatN (const TInt &NId, const TStr &AttrName, TStr &ValX) const |
Gets Str sparse attribute with name AttrName from node with id NId . More... | |
int | GetSAttrDatN (const TInt &NId, const TInt &AttrId, TStr &ValX) const |
Gets Str sparse attribute with id AttrId from node with id NId . More... | |
int | GetSAttrDatN (const TNodeI &NodeI, const TStr &AttrName, TStr &ValX) const |
Gets Str sparse attribute with name AttrName from NodeI . More... | |
int | GetSAttrDatN (const TNodeI &NodeI, const TInt &AttrId, TStr &ValX) const |
Gets Str sparse attribute with id AttrId from NodeI . More... | |
int | DelSAttrDatN (const TInt &NId, const TStr &AttrName) |
Deletes sparse attribute with name AttrName from node with id NId . More... | |
int | DelSAttrDatN (const TInt &NId, const TInt &AttrId) |
Deletes sparse attribute with id AttrId from node with id NId . More... | |
int | DelSAttrDatN (const TNodeI &NodeI, const TStr &AttrName) |
Deletes sparse attribute with name AttrName from NodeI . More... | |
int | DelSAttrDatN (const TNodeI &NodeI, const TInt &AttrId) |
Deletes sparse attribute with id AttrId from NodeI . More... | |
int | GetSAttrVN (const TInt &NId, const TAttrType AttrType, TAttrPrV &AttrV) const |
Gets a list of all sparse attributes of type AttrType for node with id NId . More... | |
int | GetSAttrVN (const TNodeI &NodeI, const TAttrType AttrType, TAttrPrV &AttrV) const |
Gets a list of all sparse attributes of type AttrType for NodeI . More... | |
int | GetIdVSAttrN (const TStr &AttrName, TIntV &IdV) const |
Gets a list of all nodes that have a sparse attribute with name AttrName . More... | |
int | GetIdVSAttrN (const TInt &AttrId, TIntV &IdV) const |
Gets a list of all nodes that have a sparse attribute with id AttrId . More... | |
int | AddSAttrN (const TStr &Name, const TAttrType &AttrType, TInt &AttrId) |
Adds mapping for sparse attribute with name Name and type AttrType . More... | |
int | GetSAttrIdN (const TStr &Name, TInt &AttrIdX, TAttrType &AttrTypeX) const |
Gets id and type for attribute with name Name . More... | |
int | GetSAttrNameN (const TInt &AttrId, TStr &NameX, TAttrType &AttrTypeX) const |
Gets name and type for attribute with id AttrId . More... | |
int | AddSAttrDatE (const TInt &EId, const TStr &AttrName, const TInt &Val) |
Adds Int sparse attribute with name AttrName to the given edge with id EId . More... | |
int | AddSAttrDatE (const TInt &EId, const TInt &AttrId, const TInt &Val) |
Adds Int sparse attribute with id AttrId to the given edge with id EId . More... | |
int | AddSAttrDatE (const TEdgeI &EdgeI, const TStr &AttrName, const TInt &Val) |
Adds Int sparse attribute with name AttrName to EdgeI . More... | |
int | AddSAttrDatE (const TEdgeI &EdgeI, const TInt &AttrId, const TInt &Val) |
Adds Int sparse attribute with id AttrId to EdgeI . More... | |
int | AddSAttrDatE (const TInt &EId, const TStr &AttrName, const TFlt &Val) |
Adds Flt sparse attribute with name AttrName to the given edge with id EId . More... | |
int | AddSAttrDatE (const TInt &EId, const TInt &AttrId, const TFlt &Val) |
Adds Flt sparse attribute with id AttrId to the given edge with id EId . More... | |
int | AddSAttrDatE (const TEdgeI &EdgeI, const TStr &AttrName, const TFlt &Val) |
Adds Flt sparse attribute with name AttrName to EdgeI . More... | |
int | AddSAttrDatE (const TEdgeI &EdgeI, const TInt &AttrId, const TFlt &Val) |
Adds Flt sparse attribute with id AttrId to EdgeI . More... | |
int | AddSAttrDatE (const TInt &EId, const TStr &AttrName, const TStr &Val) |
Adds Str sparse attribute with name AttrName to the given edge with id EId . More... | |
int | AddSAttrDatE (const TInt &EId, const TInt &AttrId, const TStr &Val) |
Adds Str sparse attribute with id AttrId to the given edge with id EId . More... | |
int | AddSAttrDatE (const TEdgeI &EdgeI, const TStr &AttrName, const TStr &Val) |
Adds Str sparse attribute with name AttrName to EdgeI . More... | |
int | AddSAttrDatE (const TEdgeI &EdgeI, const TInt &AttrId, const TStr &Val) |
Adds Str sparse attribute with id AttrId to EdgeI . More... | |
int | GetSAttrDatE (const TInt &EId, const TStr &AttrName, TInt &ValX) const |
Gets Int sparse attribute with name AttrName from edge with id EId . More... | |
int | GetSAttrDatE (const TInt &EId, const TInt &AttrId, TInt &ValX) const |
Gets Int sparse attribute with id AttrId from edge with id EId . More... | |
int | GetSAttrDatE (const TEdgeI &EdgeI, const TStr &AttrName, TInt &ValX) const |
Gets Int sparse attribute with name AttrName from EdgeI . More... | |
int | GetSAttrDatE (const TEdgeI &EdgeI, const TInt &AttrId, TInt &ValX) const |
Gets Int sparse attribute with id AttrId from EdgeI . More... | |
int | GetSAttrDatE (const TInt &EId, const TStr &AttrName, TFlt &ValX) const |
Gets Flt sparse attribute with name AttrName from edge with id EId . More... | |
int | GetSAttrDatE (const TInt &EId, const TInt &AttrId, TFlt &ValX) const |
Gets Flt sparse attribute with id AttrId from edge with id EId . More... | |
int | GetSAttrDatE (const TEdgeI &EdgeI, const TStr &AttrName, TFlt &ValX) const |
Gets Flt sparse attribute with name AttrName from EdgeI . More... | |
int | GetSAttrDatE (const TEdgeI &EdgeI, const TInt &AttrId, TFlt &ValX) const |
Gets Flt sparse attribute with id AttrId from EdgeI . More... | |
int | GetSAttrDatE (const TInt &EId, const TStr &AttrName, TStr &ValX) const |
Gets Str sparse attribute with name AttrName from edge with id EId . More... | |
int | GetSAttrDatE (const TInt &EId, const TInt &AttrId, TStr &ValX) const |
Gets Str sparse attribute with id AttrId from edge with id EId . More... | |
int | GetSAttrDatE (const TEdgeI &EdgeI, const TStr &AttrName, TStr &ValX) const |
Gets Str sparse attribute with name AttrName from EdgeI . More... | |
int | GetSAttrDatE (const TEdgeI &EdgeI, const TInt &AttrId, TStr &ValX) const |
Gets Str sparse attribute with id AttrId from EdgeI . More... | |
int | DelSAttrDatE (const TInt &EId, const TStr &AttrName) |
Deletes sparse attribute with name AttrName from edge with id EId . More... | |
int | DelSAttrDatE (const TInt &EId, const TInt &AttrId) |
Deletes sparse attribute with id AttrId from edge with id EId . More... | |
int | DelSAttrDatE (const TEdgeI &EdgeI, const TStr &AttrName) |
Deletes sparse attribute with name AttrName from EdgeI . More... | |
int | DelSAttrDatE (const TEdgeI &EdgeI, const TInt &AttrId) |
Deletes sparse attribute with id AttrId from EdgeI . More... | |
int | GetSAttrVE (const TInt &EId, const TAttrType AttrType, TAttrPrV &AttrV) const |
Gets a list of all sparse attributes of type AttrType for edge with id EId . More... | |
int | GetSAttrVE (const TEdgeI &EdgeI, const TAttrType AttrType, TAttrPrV &AttrV) const |
Gets a list of all sparse attributes of type AttrType for EdgeI . More... | |
int | GetIdVSAttrE (const TStr &AttrName, TIntV &IdV) const |
Gets a list of all edges that have a sparse attribute with name AttrName . More... | |
int | GetIdVSAttrE (const TInt &AttrId, TIntV &IdV) const |
Gets a list of all edges that have a sparse attribute with id AttrId . More... | |
int | AddSAttrE (const TStr &Name, const TAttrType &AttrType, TInt &AttrId) |
Adds mapping for sparse attribute with name Name and type AttrType . More... | |
int | GetSAttrIdE (const TStr &Name, TInt &AttrIdX, TAttrType &AttrTypeX) const |
Gets id and type for attribute with name Name . More... | |
int | GetSAttrNameE (const TInt &AttrId, TStr &NameX, TAttrType &AttrTypeX) const |
Gets name and type for attribute with id AttrId . More... | |
Static Public Member Functions | |
static PNEANet | New () |
Static cons returns pointer to graph. Ex: PNEANet Graph=TNEANet::New(). More... | |
static PNEANet | New (const int &Nodes, const int &Edges) |
Static constructor that returns a pointer to the graph and reserves enough memory for Nodes nodes and Edges edges. More... | |
static PNEANet | Load (TSIn &SIn) |
Static constructor that loads the graph from a stream SIn and returns a pointer to it. More... | |
static PNEANet | Load_V1 (TSIn &SIn) |
Static constructor that loads the graph from a stream SIn and returns a pointer to it. Backwards compatible. More... | |
static PNEANet | Load_V2 (TSIn &SIn) |
Static constructor that loads the graph from a stream SIn and returns a pointer to it. Backwards compatible without Sparse. More... | |
static PNEANet | LoadShM (TShMIn &ShMIn) |
Static constructor that loads the network from memory. More... | |
static PNEANet | GetSmallGraph () |
Returns a small multigraph on 5 nodes and 6 edges. More... | |
Public Attributes | |
TCRef | CRef |
Protected Types | |
enum | { IntType, StrType, FltType, IntVType, FltVType } |
Protected Member Functions | |
TNode & | GetNode (const int &NId) |
const TNode & | GetNode (const int &NId) const |
TEdge & | GetEdge (const int &EId) |
const TEdge & | GetEdge (const int &EId) const |
int | AddAttributes (const int NId) |
TInt | GetIntAttrDefaultN (const TStr &attribute) const |
Gets Int node attribute val. If not a proper attr, return default. More... | |
TStr | GetStrAttrDefaultN (const TStr &attribute) const |
Gets Str node attribute val. If not a proper attr, return default. More... | |
TFlt | GetFltAttrDefaultN (const TStr &attribute) const |
Gets Flt node attribute val. If not a proper attr, return default. More... | |
TInt | GetIntAttrDefaultE (const TStr &attribute) const |
Gets Int edge attribute val. If not a proper attr, return default. More... | |
TStr | GetStrAttrDefaultE (const TStr &attribute) const |
Gets Str edge attribute val. If not a proper attr, return default. More... | |
TFlt | GetFltAttrDefaultE (const TStr &attribute) const |
Gets Flt edge attribute val. If not a proper attr, return default. More... | |
TInt | CheckDenseOrSparseN (const TStr &attr) const |
Return 1 if in Dense, 0 if in Sparse, -1 if neither. More... | |
TInt | CheckDenseOrSparseE (const TStr &attr) const |
TNEANet (const TNEANet &Graph, bool modeSubGraph) | |
TNEANet (bool copyAll, const TNEANet &Graph) | |
Friends | |
class | TPt< TNEANet > |
Directed multigraph with node edge attributes.
Node IDs can be arbitrary non-negative integers. Edges have IDs. There can be more than one directed edge from one source node to a destination node. Self loops (one per node) are allowed as well as multiple (parallel) edges. Nodes and edges can have attributes/data associated with them. The attributes can be added dynamically at runtime. The directed multigraph data structure is implemented using sorted adjacency lists. This means adding a node takes constant time, while adding an edge takes linear time (since adjacency list is kept sorted) in the node degree. Accessing arbitrary node takes constant time and accessing any edge takes logarithmic time in the node degree. The attributes are organized in a columnar store, where each attribute column is defined for all the nodes or edges in the network.
typedef TPt<TNEANet> TNEANet::PNet |
typedef TNEANet TNEANet::TNet |
|
protected |
Enumerator | |
---|---|
IntType | |
StrType | |
FltType | |
IntVType | |
FltVType |
Definition at line 2070 of file network.h.
|
inline |
Definition at line 2124 of file network.h.
|
inlineexplicit |
Constructor that reserves enough memory for a graph of nodes and edges.
Definition at line 2134 of file network.h.
|
inline |
Definition at line 2144 of file network.h.
|
inline |
Constructor for loading the graph from a (binary) stream SIn.
Definition at line 2154 of file network.h.
|
inlineprotected |
Definition at line 2164 of file network.h.
|
inlineprotected |
Definition at line 2174 of file network.h.
|
protected |
Definition at line 559 of file network.cpp.
int TNEANet::AddEdge | ( | const int & | SrcNId, |
const int & | DstNId, | ||
int | EId = -1 |
||
) |
Adds an edge with ID EId between node IDs SrcNId and DstNId to the graph.
Returns the ID of the edge being added. If EId is -1, edge ID is automatically assigned. Aborts, if an edge with ID EId already exists. Aborts, if SrcNId or DstNId are not nodes in the graph.
Definition at line 753 of file network.cpp.
|
inline |
Adds an edge between EdgeI.GetSrcNId() and EdgeI.GetDstNId() to the graph.
Definition at line 2794 of file network.h.
Attribute based add function for attr to Flt value.
Adds the key flt value pair to the corresponding edge attribute value vector.
Definition at line 2908 of file network.h.
Definition at line 1379 of file network.cpp.
Attribute based add function for attr to Flt value.
Definition at line 2868 of file network.h.
Definition at line 1224 of file network.cpp.
Adds a new Flt edge attribute to the hashmap.
Definition at line 1716 of file network.cpp.
Adds a new Flt node attribute to the hashmap.
Definition at line 1621 of file network.cpp.
|
inline |
Attribute based add function for attr to TFltV value.
Adds the key float vector value pair to the corresponding edge attribute value vector.
Definition at line 2924 of file network.h.
int TNEANet::AddFltVAttrDatE | ( | const int & | EId, |
const TFltV & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1294 of file network.cpp.
|
inline |
Attribute based add function for attr to FltV value.
Definition at line 2874 of file network.h.
int TNEANet::AddFltVAttrDatN | ( | const int & | NId, |
const TFltV & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1077 of file network.cpp.
Adds a new FltV edge attribute to the hashmap.
Definition at line 1679 of file network.cpp.
Adds a new FltV node attribute to the hashmap.
Definition at line 1584 of file network.cpp.
Attribute based add function for attr to Int value.
Adds the key int value pair to the corresponding edge attribute value vector.
Definition at line 2898 of file network.h.
Definition at line 1248 of file network.cpp.
Attribute based add function for attr to Int value.
Definition at line 2862 of file network.h.
Definition at line 1031 of file network.cpp.
Adds a new Int edge attribute to the hashmap.
Definition at line 1641 of file network.cpp.
Adds a new Int node attribute to the hashmap.
Definition at line 1547 of file network.cpp.
|
inline |
Attribute based add function for attr to IntV value.
Adds the key integer vector value pair to the corresponding edge attribute value vector.
Definition at line 2915 of file network.h.
int TNEANet::AddIntVAttrDatE | ( | const int & | EId, |
const TIntV & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1271 of file network.cpp.
|
inline |
Attribute based add function for attr to IntV value.
Definition at line 2871 of file network.h.
int TNEANet::AddIntVAttrDatN | ( | const int & | NId, |
const TIntV & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1054 of file network.cpp.
Adds a new IntV edge attribute to the hashmap.
Definition at line 1661 of file network.cpp.
Adds a new IntV node attribute to the hashmap.
Definition at line 1566 of file network.cpp.
int TNEANet::AddNode | ( | int | NId = -1 | ) |
Adds a node of ID NId to the network.
Returns the ID of the node being added. If NId is -1, node ID is automatically assigned. Aborts, if a node with ID NId already exists.
Definition at line 535 of file network.cpp.
|
inline |
Adds a node of ID NodeI.GetId() to the graph.
Definition at line 2377 of file network.h.
int TNEANet::AddNodeUnchecked | ( | int | NId = -1 | ) |
Adds a node of ID NId to the network, noop if the node already exists.
Returns -1, if the node NId already exists. Otherwise, it returns the ID of the node being added. If NId is -1, node ID is automatically assigned.
Definition at line 547 of file network.cpp.
Adds Int sparse attribute with name AttrName
to the given edge with id EId
.
Definition at line 1991 of file network.cpp.
Adds Int sparse attribute with id AttrId
to the given edge with id EId
.
Definition at line 1998 of file network.cpp.
Adds Int sparse attribute with name AttrName
to EdgeI
.
Definition at line 3243 of file network.h.
Adds Int sparse attribute with id AttrId
to EdgeI
.
Definition at line 3247 of file network.h.
Adds Flt sparse attribute with name AttrName
to the given edge with id EId
.
Definition at line 2005 of file network.cpp.
Adds Flt sparse attribute with id AttrId
to the given edge with id EId
.
Definition at line 2012 of file network.cpp.
Adds Flt sparse attribute with name AttrName
to EdgeI
.
Definition at line 3257 of file network.h.
Adds Flt sparse attribute with id AttrId
to EdgeI
.
Definition at line 3261 of file network.h.
Adds Str sparse attribute with name AttrName
to the given edge with id EId
.
Definition at line 2019 of file network.cpp.
Adds Str sparse attribute with id AttrId
to the given edge with id EId
.
Definition at line 2026 of file network.cpp.
Adds Str sparse attribute with name AttrName
to EdgeI
.
Definition at line 3271 of file network.h.
Adds Str sparse attribute with id AttrId
to EdgeI
.
Definition at line 3275 of file network.h.
Adds Int sparse attribute with name AttrName
to the given node with id NId
.
Definition at line 1865 of file network.cpp.
Adds Int sparse attribute with id AttrId
to the given node with id NId
.
Definition at line 1872 of file network.cpp.
Adds Int sparse attribute with name AttrName
to NodeI
.
Definition at line 3125 of file network.h.
Adds Int sparse attribute with id AttrId
to NodeI
.
Definition at line 3129 of file network.h.
Adds Flt sparse attribute with name AttrName
to the given node with id NId
.
Definition at line 1879 of file network.cpp.
Adds Flt sparse attribute with id AttrId
to the given node with id NId
.
Definition at line 1886 of file network.cpp.
Adds Flt sparse attribute with name AttrName
to NodeI
.
Definition at line 3139 of file network.h.
Adds Flt sparse attribute with id AttrId
to NodeI
.
Definition at line 3143 of file network.h.
Adds Str sparse attribute with name AttrName
to the given node with id NId
.
Definition at line 1893 of file network.cpp.
Adds Str sparse attribute with id AttrId
to the given node with id NId
.
Definition at line 1900 of file network.cpp.
Adds Str sparse attribute with name AttrName
to NodeI
.
Definition at line 3153 of file network.h.
Adds Str sparse attribute with id AttrId
to NodeI
.
Definition at line 3157 of file network.h.
Adds mapping for sparse attribute with name Name
and type AttrType
.
Definition at line 2105 of file network.cpp.
Adds mapping for sparse attribute with name Name
and type AttrType
.
Definition at line 1979 of file network.cpp.
Attribute based add function for attr to Str value.
Adds the key str value pair to the corresponding edge attribute value vector.
Definition at line 2903 of file network.h.
Definition at line 1356 of file network.cpp.
Attribute based add function for attr to Str value.
Definition at line 2865 of file network.h.
Definition at line 1201 of file network.cpp.
int TNEANet::AddStrAttrE | ( | const TStr & | attr, |
TStr | defaultValue = TStr::GetNullStr() |
||
) |
Adds a new Str edge attribute to the hashmap.
Definition at line 1697 of file network.cpp.
int TNEANet::AddStrAttrN | ( | const TStr & | attr, |
TStr | defaultValue = TStr::GetNullStr() |
||
) |
Adds a new Str node attribute to the hashmap.
Definition at line 1602 of file network.cpp.
|
inline |
Appends value onto the TFltV attribute for the given node.
Definition at line 2927 of file network.h.
int TNEANet::AppendFltVAttrDatE | ( | const int & | EId, |
const TFlt & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1337 of file network.cpp.
|
inline |
Appends value onto the TFltV attribute for the given node.
Definition at line 2887 of file network.h.
int TNEANet::AppendFltVAttrDatN | ( | const int & | NId, |
const TFlt & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1125 of file network.cpp.
|
inline |
Appends value onto the TIntV attribute for the given node.
Definition at line 2918 of file network.h.
int TNEANet::AppendIntVAttrDatE | ( | const int & | EId, |
const TInt & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1317 of file network.cpp.
|
inline |
Appends value onto the TIntV attribute for the given node.
Definition at line 2880 of file network.h.
int TNEANet::AppendIntVAttrDatN | ( | const int & | NId, |
const TInt & | value, | ||
const TStr & | attr, | ||
TBool | UseDense = true |
||
) |
Definition at line 1102 of file network.cpp.
Returns a vector of attr names for edge EId.
Definition at line 2586 of file network.h.
void TNEANet::AttrNameEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 308 of file network.cpp.
Returns a vector of attr names for node NId.
Definition at line 2531 of file network.h.
void TNEANet::AttrNameNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 72 of file network.cpp.
Returns a vector of attr values for edge EId.
Definition at line 2590 of file network.h.
void TNEANet::AttrValueEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Values | ||
) | const |
Definition at line 318 of file network.cpp.
Returns a vector of attr values for node NId.
Definition at line 2535 of file network.h.
void TNEANet::AttrValueNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Values | ||
) | const |
Definition at line 82 of file network.cpp.
Returns an iterator referring to the first edge's int attribute.
Definition at line 2705 of file network.h.
Returns an iterator referring to the first edge's int attribute.
Definition at line 2653 of file network.h.
|
inline |
Returns an iterator referring to the first node's flt attribute.
Definition at line 2521 of file network.h.
Returns an iterator referring to the first node's flt attribute.
Definition at line 2457 of file network.h.
Returns an iterator referring to the first node's int attribute.
Definition at line 2393 of file network.h.
Returns an iterator referring to the first node's int attribute.
Definition at line 2403 of file network.h.
Returns an iterator referring to the first node's str attribute.
Definition at line 2511 of file network.h.
|
inline |
Return 1 if in Dense, 0 if in Sparse, -1 if neither.
Definition at line 2110 of file network.h.
|
inline |
Deletes all nodes and edges from the graph.
Definition at line 2836 of file network.h.
|
inline |
Definition at line 2279 of file network.h.
void TNEANet::Defrag | ( | const bool & | OnlyNodeLinks = false | ) |
Defragments the graph.
After performing many node and edge insertions and deletions to a graph, the graph data structure will be fragmented in memory. This function compacts down the graph data structure and frees unneeded memory.
Definition at line 901 of file network.cpp.
Deletes the edge attribute for NodeI.
Definition at line 3009 of file network.h.
int TNEANet::DelAttrDatE | ( | const int & | EId, |
const TStr & | attr | ||
) |
Definition at line 1524 of file network.cpp.
Deletes the node attribute for NodeI.
Definition at line 3006 of file network.h.
int TNEANet::DelAttrDatN | ( | const int & | NId, |
const TStr & | attr | ||
) |
Definition at line 1502 of file network.cpp.
int TNEANet::DelAttrE | ( | const TStr & | attr | ) |
Removes all the values for edge attr.
Definition at line 1769 of file network.cpp.
int TNEANet::DelAttrN | ( | const TStr & | attr | ) |
Removes all the values for node attr.
Definition at line 1735 of file network.cpp.
void TNEANet::DelEdge | ( | const int & | EId | ) |
Deletes an edge with edge ID EId from the graph.
Definition at line 828 of file network.cpp.
void TNEANet::DelEdge | ( | const int & | SrcNId, |
const int & | DstNId, | ||
const bool & | IsDir = true |
||
) |
Deletes all edges between node IDs SrcNId and DstNId from the graph.
If the edge (SrcNId, DstNId) does not exist in the graph function still completes. But the function aborts if SrcNId or DstNId are not nodes in the graph.
Definition at line 856 of file network.cpp.
|
inline |
Deletes value from the TFltV attribute for the given node.
Definition at line 2890 of file network.h.
Definition at line 1176 of file network.cpp.
|
inline |
Deletes value from the TIntV attribute for the given node.
Definition at line 2883 of file network.h.
Definition at line 1150 of file network.cpp.
|
virtual |
Deletes node of ID NId from the graph.
If the node of ID NId does not exist the function aborts.
Reimplemented in TModeNet.
Definition at line 631 of file network.cpp.
|
inline |
Deletes node of ID NodeI.GetId() from the graph.
Definition at line 2383 of file network.h.
Deletes sparse attribute with name AttrName
from edge with id EId
.
Definition at line 2075 of file network.cpp.
Deletes sparse attribute with id AttrId
from edge with id EId
.
Definition at line 2082 of file network.cpp.
Deletes sparse attribute with name AttrName
from EdgeI
.
Definition at line 3327 of file network.h.
Deletes sparse attribute with id AttrId
from EdgeI
.
Definition at line 3331 of file network.h.
Deletes sparse attribute with name AttrName
from node with id NId
.
Definition at line 1949 of file network.cpp.
Deletes sparse attribute with id AttrId
from node with id NId
.
Definition at line 1956 of file network.cpp.
Deletes sparse attribute with name AttrName
from NodeI
.
Definition at line 3209 of file network.h.
Deletes sparse attribute with id AttrId
from NodeI
.
Definition at line 3213 of file network.h.
void TNEANet::Dump | ( | FILE * | OutF = stdout | ) | const |
Print the graph in a human readable form to an output stream OutF.
Definition at line 963 of file network.cpp.
bool TNEANet::EdgeAttrIsDeleted | ( | const int & | EId, |
const TStrIntPrH::TIter & | EdgeHI | ||
) | const |
Returns true if EId attr deleted for current edge attr iterator.
Definition at line 482 of file network.cpp.
bool TNEANet::EdgeAttrIsFltDeleted | ( | const int & | EId, |
const TStrIntPrH::TIter & | EdgeHI | ||
) | const |
Returns true if EId attr deleted for current edge flt attr iterator.
Definition at line 515 of file network.cpp.
bool TNEANet::EdgeAttrIsFltVDeleted | ( | const int & | EId, |
const TStrIntPrH::TIter & | EdgeHI | ||
) | const |
Returns true if EId attr deleted for current edge flt vector attr iterator.
Definition at line 503 of file network.cpp.
bool TNEANet::EdgeAttrIsIntDeleted | ( | const int & | EId, |
const TStrIntPrH::TIter & | EdgeHI | ||
) | const |
Returns true if EId attr deleted for current edge int attr iterator.
Definition at line 491 of file network.cpp.
bool TNEANet::EdgeAttrIsIntVDeleted | ( | const int & | EId, |
const TStrIntPrH::TIter & | EdgeHI | ||
) | const |
Returns true if EId attr deleted for current edge int vector attr iterator.
Definition at line 497 of file network.cpp.
bool TNEANet::EdgeAttrIsStrDeleted | ( | const int & | EId, |
const TStrIntPrH::TIter & | EdgeHI | ||
) | const |
Returns true if EId attr deleted for current edge str attr iterator.
Definition at line 509 of file network.cpp.
|
inline |
Tests whether the graph is empty (has zero nodes).
Definition at line 2834 of file network.h.
Returns an iterator referring to the past-the-end edge's attribute.
Definition at line 2722 of file network.h.
Returns an iterator referring to the past-the-end edge's attribute.
Definition at line 2670 of file network.h.
|
inline |
Returns an iterator referring to the past-the-end node's attribute.
Definition at line 2524 of file network.h.
Returns an iterator referring to the past-the-end node's attribute.
Definition at line 2474 of file network.h.
Returns an iterator referring to the past-the-end node's attribute.
Definition at line 2396 of file network.h.
Returns an iterator referring to the past-the-end node's attribute.
Definition at line 2420 of file network.h.
Returns an iterator referring to the past-the-end node's attribute.
Definition at line 2515 of file network.h.
|
inline |
Returns a vector of int attr names for node NId.
Definition at line 2631 of file network.h.
void TNEANet::FltAttrNameEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 432 of file network.cpp.
Returns a vector of int attr names for node NId.
Definition at line 2577 of file network.h.
void TNEANet::FltAttrNameNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 196 of file network.cpp.
Returns a vector of attr values for node NId.
Definition at line 2635 of file network.h.
void TNEANet::FltAttrValueEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TFltV & | Values | ||
) | const |
Definition at line 442 of file network.cpp.
Returns a vector of attr values for node NId.
Definition at line 2581 of file network.h.
void TNEANet::FltAttrValueNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TFltV & | Values | ||
) | const |
Definition at line 206 of file network.cpp.
Returns a vector of flt attr names for edge EId.
Definition at line 2613 of file network.h.
void TNEANet::FltVAttrNameEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 380 of file network.cpp.
Returns a vector of flt attr names for node NId.
Definition at line 2559 of file network.h.
void TNEANet::FltVAttrNameNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 144 of file network.cpp.
Returns a vector of attr values for edge EId.
Definition at line 2617 of file network.h.
void TNEANet::FltVAttrValueEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TVec< TFltV > & | Values | ||
) | const |
Definition at line 390 of file network.cpp.
Returns a vector of flt values for node NId.
Definition at line 2563 of file network.h.
void TNEANet::FltVAttrValueNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TVec< TFltV > & | Values | ||
) | const |
Definition at line 154 of file network.cpp.
void TNEANet::GetAttrENames | ( | TStrV & | IntAttrNames, |
TStrV & | FltAttrNames, | ||
TStrV & | StrAttrNames | ||
) | const |
Fills each of the vectors with the names of edge attributes of the given type.
Definition at line 1817 of file network.cpp.
int TNEANet::GetAttrIndE | ( | const TStr & | attr | ) |
Gets the index of the edge attr value vector specified by attr
.
Definition at line 1497 of file network.cpp.
int TNEANet::GetAttrIndN | ( | const TStr & | attr | ) |
Gets the index of the node attr value vector specified by attr
.
Definition at line 1452 of file network.cpp.
void TNEANet::GetAttrNNames | ( | TStrV & | IntAttrNames, |
TStrV & | FltAttrNames, | ||
TStrV & | StrAttrNames | ||
) | const |
Fills each of the vectors with the names of node attributes of the given type.
Definition at line 1803 of file network.cpp.
Returns an iterator referring to the edge of ID EId in the graph.
Definition at line 2776 of file network.h.
Returns an iterator referring to the edge of ID EId in the graph.
Definition at line 2739 of file network.h.
Returns an iterator referring to the edge of ID EId in the graph.
Definition at line 2648 of file network.h.
Returns an iterator referring to the edge of ID EId in the graph.
Definition at line 2687 of file network.h.
Returns an iterator referring to the edge of ID EId in the graph.
Definition at line 2764 of file network.h.
|
inlineprotected |
|
inlineprotected |
TStr TNEANet::GetEdgeAttrValue | ( | const int & | EId, |
const TStrIntPrH::TIter & | EdgeHI | ||
) | const |
Returns edge attribute value, converted to Str type.
Definition at line 521 of file network.cpp.
|
inline |
|
inline |
|
inline |
Returns an iterator referring to edge (SrcNId, DstNId) in the graph.
Definition at line 2818 of file network.h.
|
inline |
Returns an edge ID between node IDs SrcNId and DstNId, if such an edge exists. Otherwise, return -1.
Definition at line 2810 of file network.h.
void TNEANet::GetEIdV | ( | TIntV & | EIdV | ) | const |
Gets a vector IDs of all edges in the graph.
Definition at line 894 of file network.cpp.
Gets the value of flt attr from the edge attr value vector.
Definition at line 2975 of file network.h.
Definition at line 1477 of file network.cpp.
Gets the value of flt attr from the node attr value vector.
Definition at line 2938 of file network.h.
Definition at line 1432 of file network.cpp.
Gets the value of a float edge attr specified by edge iterator EdgeI
and the attr index
.
Definition at line 2996 of file network.h.
TFlt TNEANet::GetFltAttrIndDatE | ( | const int & | EId, |
const int & | index | ||
) |
Gets the value of an int edge attr specified by edge ID EId
and the attr index
.
Definition at line 1489 of file network.cpp.
Gets the value of a float node attr specified by node iterator NodeI
and the attr index
.
Definition at line 2964 of file network.h.
TFlt TNEANet::GetFltAttrIndDatN | ( | const int & | NId, |
const int & | index | ||
) |
Gets the value of a float node attr specified by node ID NId
and the attr index
.
Definition at line 1444 of file network.cpp.
int TNEANet::GetFltKeyIdE | ( | const int & | EId | ) |
Gets the value of the fltv attr from the edge attr value vector.
Definition at line 2982 of file network.h.
Definition at line 1467 of file network.cpp.
Gets the value of the fltv attr from the node attr value vector.
Definition at line 2945 of file network.h.
Definition at line 1422 of file network.cpp.
Gets a list of all edges that have a sparse attribute with name AttrName
.
Definition at line 2097 of file network.cpp.
Gets a list of all edges that have a sparse attribute with id AttrId
.
Definition at line 2101 of file network.cpp.
Gets a list of all nodes that have a sparse attribute with name AttrName
.
Definition at line 1971 of file network.cpp.
Gets a list of all nodes that have a sparse attribute with id AttrId
.
Definition at line 1975 of file network.cpp.
Gets the value of int attr from the edge attr value vector.
Definition at line 2969 of file network.h.
Definition at line 1456 of file network.cpp.
Gets the value of int attr from the node attr value vector.
Definition at line 2931 of file network.h.
Definition at line 1411 of file network.cpp.
Gets the value of an int edge attr specified by edge iterator EdgeI
and the attr index
.
Definition at line 2991 of file network.h.
TInt TNEANet::GetIntAttrIndDatE | ( | const int & | EId, |
const int & | index | ||
) |
Gets the value of an int edge attr specified by edge ID EId
and the attr index
.
Definition at line 1481 of file network.cpp.
Gets the value of an int node attr specified by node iterator NodeI
and the attr index
.
Definition at line 2954 of file network.h.
TInt TNEANet::GetIntAttrIndDatN | ( | const int & | NId, |
const int & | index | ||
) |
Gets the value of an int node attr specified by node ID NId
and the attr index
.
Definition at line 1436 of file network.cpp.
int TNEANet::GetIntAttrIndE | ( | const TStr & | attr | ) |
Gets the index of the edge attr value vector specified by attr
(same as GetAttrIndE for compatibility reasons).
Definition at line 1493 of file network.cpp.
int TNEANet::GetIntAttrIndN | ( | const TStr & | attr | ) |
Gets the index of the node attr value vector specified by attr
(same as GetAttrIndN for compatibility reasons).
Definition at line 1448 of file network.cpp.
Gets the value of the intv attr from the edge attr value vector.
Definition at line 2978 of file network.h.
Definition at line 1460 of file network.cpp.
Gets the value of the intv attr from the node attr value vector.
Definition at line 2941 of file network.h.
Definition at line 1415 of file network.cpp.
|
inline |
|
inline |
Returns an iterator referring to the node of ID NId in the graph.
Definition at line 2527 of file network.h.
Returns an iterator referring to the node of ID NId in the graph.
Definition at line 2493 of file network.h.
Returns an iterator referring to the node of ID NId in the graph.
Definition at line 2399 of file network.h.
Returns an iterator referring to the node of ID NId in the graph.
Definition at line 2439 of file network.h.
Returns an iterator referring to the node of ID NId in the graph.
Definition at line 2518 of file network.h.
|
inline |
void TNEANet::GetNIdV | ( | TIntV & | NIdV | ) | const |
Gets a vector IDs of all nodes in the graph.
Definition at line 887 of file network.cpp.
|
inlineprotected |
|
inlineprotected |
TStr TNEANet::GetNodeAttrValue | ( | const int & | NId, |
const TStrIntPrH::TIter & | NodeHI | ||
) | const |
Returns node attribute value, converted to Str type.
Definition at line 294 of file network.cpp.
|
inline |
Returns an interator referring to a random edge in the graph.
Definition at line 2827 of file network.h.
Returns an ID of a random edge in the graph.
Definition at line 2825 of file network.h.
Returns an interator referring to a random node in the graph.
Definition at line 2823 of file network.h.
Returns an ID of a random node in the graph.
Definition at line 2821 of file network.h.
Gets Int sparse attribute with name AttrName
from edge with id EId
.
Definition at line 2033 of file network.cpp.
Gets Int sparse attribute with id AttrId
from edge with id EId
.
Definition at line 2040 of file network.cpp.
Gets Int sparse attribute with name AttrName
from EdgeI
.
Definition at line 3285 of file network.h.
Gets Int sparse attribute with id AttrId
from EdgeI
.
Definition at line 3289 of file network.h.
Gets Flt sparse attribute with name AttrName
from edge with id EId
.
Definition at line 2047 of file network.cpp.
Gets Flt sparse attribute with id AttrId
from edge with id EId
.
Definition at line 2054 of file network.cpp.
Gets Flt sparse attribute with name AttrName
from EdgeI
.
Definition at line 3299 of file network.h.
Gets Flt sparse attribute with id AttrId
from EdgeI
.
Definition at line 3303 of file network.h.
Gets Str sparse attribute with name AttrName
from edge with id EId
.
Definition at line 2061 of file network.cpp.
Gets Str sparse attribute with id AttrId
from edge with id EId
.
Definition at line 2068 of file network.cpp.
Gets Str sparse attribute with name AttrName
from EdgeI
.
Definition at line 3313 of file network.h.
Gets Str sparse attribute with id AttrId
from EdgeI
.
Definition at line 3317 of file network.h.
Gets Int sparse attribute with name AttrName
from node with id NId
.
Definition at line 1907 of file network.cpp.
Gets Int sparse attribute with id AttrId
from node with id NId
.
Definition at line 1914 of file network.cpp.
Gets Int sparse attribute with name AttrName
from NodeI
.
Definition at line 3167 of file network.h.
Gets Int sparse attribute with id AttrId
from NodeI
.
Definition at line 3171 of file network.h.
Gets Flt sparse attribute with name AttrName
from node with id NId
.
Definition at line 1921 of file network.cpp.
Gets Flt sparse attribute with id AttrId
from node with id NId
.
Definition at line 1928 of file network.cpp.
Gets Flt sparse attribute with name AttrName
from NodeI
.
Definition at line 3181 of file network.h.
Gets Flt sparse attribute with id AttrId
from NodeI
.
Definition at line 3185 of file network.h.
Gets Str sparse attribute with name AttrName
from node with id NId
.
Definition at line 1935 of file network.cpp.
Gets Str sparse attribute with id AttrId
from node with id NId
.
Definition at line 1942 of file network.cpp.
Gets Str sparse attribute with name AttrName
from NodeI
.
Definition at line 3195 of file network.h.
Gets Str sparse attribute with id AttrId
from NodeI
.
Definition at line 3199 of file network.h.
Gets id and type for attribute with name Name
.
Definition at line 2109 of file network.cpp.
Gets id and type for attribute with name Name
.
Definition at line 1983 of file network.cpp.
Gets name and type for attribute with id AttrId
.
Definition at line 2113 of file network.cpp.
Gets name and type for attribute with id AttrId
.
Definition at line 1987 of file network.cpp.
Gets a list of all sparse attributes of type AttrType
for edge with id EId
.
Definition at line 2089 of file network.cpp.
|
inline |
Gets a list of all sparse attributes of type AttrType
for EdgeI
.
Definition at line 3337 of file network.h.
Gets a list of all sparse attributes of type AttrType
for node with id NId
.
Definition at line 1963 of file network.cpp.
|
inline |
Gets a list of all sparse attributes of type AttrType
for NodeI
.
Definition at line 3220 of file network.h.
|
static |
Returns a small multigraph on 5 nodes and 6 edges.
/// Edges: 0 -> 1, 0 -> 2, 0 -> 3, 0 -> 4, 1 -> 2, 1 -> 2 ///
Definition at line 1794 of file network.cpp.
Gets the value of str attr from the edge attr value vector.
Definition at line 2972 of file network.h.
Definition at line 1473 of file network.cpp.
Gets the value of str attr from the node attr value vector.
Definition at line 2935 of file network.h.
Definition at line 1428 of file network.cpp.
Gets Str edge attribute val. If not a proper attr, return default.
Definition at line 2046 of file network.h.
Gets Str node attribute val. If not a proper attr, return default.
Definition at line 2040 of file network.h.
Gets the value of a string edge attr specified by edge iterator EdgeI
and the attr index
.
Definition at line 3001 of file network.h.
TStr TNEANet::GetStrAttrIndDatE | ( | const int & | EId, |
const int & | index | ||
) |
Gets the value of an int edge attr specified by edge ID EId
and the attr index
.
Definition at line 1485 of file network.cpp.
Gets the value of a string node attr specified by node iterator NodeI
and the attr index
.
Definition at line 2959 of file network.h.
TStr TNEANet::GetStrAttrIndDatN | ( | const int & | NId, |
const int & | index | ||
) |
Gets the value of a string node attr specified by node ID NId
and the attr index
.
Definition at line 1440 of file network.cpp.
Gets the sum of the weights of all the outgoing edges of the node.
Definition at line 1831 of file network.cpp.
Fills OutWeights with the outgoing weight from each node.
Definition at line 1842 of file network.cpp.
bool TNEANet::HasFlag | ( | const TGraphFlag & | Flag | ) | const |
Allows for run-time checking the type of the graph (see the TGraphFlag for flags).
Definition at line 50 of file network.cpp.
Returns a vector of int attr names for edge EId.
Definition at line 2594 of file network.h.
void TNEANet::IntAttrNameEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 328 of file network.cpp.
Returns a vector of int attr names for node NId.
Definition at line 2540 of file network.h.
void TNEANet::IntAttrNameNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 92 of file network.cpp.
Returns a vector of attr values for edge EId.
Definition at line 2598 of file network.h.
void TNEANet::IntAttrValueEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TIntV & | Values | ||
) | const |
Definition at line 338 of file network.cpp.
Returns a vector of attr values for node NId.
Definition at line 2544 of file network.h.
void TNEANet::IntAttrValueNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TIntV & | Values | ||
) | const |
Definition at line 102 of file network.cpp.
Returns a vector of int attr names for edge EId.
Definition at line 2604 of file network.h.
void TNEANet::IntVAttrNameEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 349 of file network.cpp.
Returns a vector of int attr names for node NId.
Definition at line 2550 of file network.h.
void TNEANet::IntVAttrNameNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 113 of file network.cpp.
Returns a vector of attr values for edge EId.
Definition at line 2608 of file network.h.
void TNEANet::IntVAttrValueEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TVec< TIntV > & | Values | ||
) | const |
Definition at line 359 of file network.cpp.
Returns a vector of attr values for node NId.
Definition at line 2554 of file network.h.
void TNEANet::IntVAttrValueNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TVec< TIntV > & | Values | ||
) | const |
Definition at line 123 of file network.cpp.
bool TNEANet::IsAttrDeletedE | ( | const int & | EId, |
const TStr & | attr | ||
) | const |
Returns true if attr
exists for edge EId
and has default value.
Definition at line 453 of file network.cpp.
bool TNEANet::IsAttrDeletedN | ( | const int & | NId, |
const TStr & | attr | ||
) | const |
Returns true if attr
exists for node NId
and has default value.
Definition at line 217 of file network.cpp.
|
inline |
|
inline |
Tests whether an edge between node IDs SrcNId and DstNId exists in the graph.
Definition at line 2806 of file network.h.
bool TNEANet::IsEdge | ( | const int & | SrcNId, |
const int & | DstNId, | ||
int & | EId, | ||
const bool & | IsDir = true |
||
) | const |
Tests whether an edge between node IDs SrcNId and DstNId exists in the graph. if an edge exists, return its edge ID in EId.
Definition at line 866 of file network.cpp.
bool TNEANet::IsFltAttrDeletedE | ( | const int & | EId, |
const TStr & | attr | ||
) | const |
Returns true if Flt attr
exists for edge NId
and has default value.
Definition at line 478 of file network.cpp.
bool TNEANet::IsFltAttrDeletedN | ( | const int & | NId, |
const TStr & | attr | ||
) | const |
Returns true if Flt attr
exists for node NId
and has default value.
Definition at line 242 of file network.cpp.
bool TNEANet::IsFltAttrE | ( | const TStr & | attr | ) |
Checks if there is an edge attribute with name attr.
Definition at line 1850 of file network.cpp.
bool TNEANet::IsFltVAttrDeletedE | ( | const int & | EId, |
const TStr & | attr | ||
) | const |
Returns true if FltV attr
exists for edge EId
and is an empty vector.
Definition at line 470 of file network.cpp.
bool TNEANet::IsFltVAttrDeletedN | ( | const int & | NId, |
const TStr & | attr | ||
) | const |
Returns true if FltV attr
exists for node NId
and is an empty vector.
Definition at line 234 of file network.cpp.
bool TNEANet::IsIntAttrDeletedE | ( | const int & | EId, |
const TStr & | attr | ||
) | const |
Returns true if Int attr
exists for edge EId
and has default value.
Definition at line 462 of file network.cpp.
bool TNEANet::IsIntAttrDeletedN | ( | const int & | NId, |
const TStr & | attr | ||
) | const |
Returns true if Int attr
exists for node NId
and has default value.
Definition at line 226 of file network.cpp.
bool TNEANet::IsIntAttrE | ( | const TStr & | attr | ) |
Checks if there is an edge attribute with name attr.
Definition at line 1855 of file network.cpp.
bool TNEANet::IsIntVAttrDeletedE | ( | const int & | EId, |
const TStr & | attr | ||
) | const |
Returns true if IntV attr
exists for edge EId
and is an empty vector.
Definition at line 466 of file network.cpp.
bool TNEANet::IsIntVAttrDeletedN | ( | const int & | NId, |
const TStr & | attr | ||
) | const |
Returns true if IntV attr
exists for node NId
and is an empty vector.
Definition at line 230 of file network.cpp.
|
inline |
bool TNEANet::IsOk | ( | const bool & | ThrowExcept = true | ) | const |
Checks the graph data structure for internal consistency.
For each node in the graph check that its neighbors are also nodes in the graph.
Definition at line 910 of file network.cpp.
bool TNEANet::IsStrAttrDeletedE | ( | const int & | EId, |
const TStr & | attr | ||
) | const |
Returns true if Str attr
exists for edge NId
and has default value.
Definition at line 474 of file network.cpp.
bool TNEANet::IsStrAttrDeletedN | ( | const int & | NId, |
const TStr & | attr | ||
) | const |
Returns true if Str attr
exists for node NId
and has default value.
Definition at line 238 of file network.cpp.
bool TNEANet::IsStrAttrE | ( | const TStr & | attr | ) |
Checks if there is an edge attribute with name attr.
Definition at line 1860 of file network.cpp.
Static constructor that loads the graph from a stream SIn and returns a pointer to it.
Definition at line 2232 of file network.h.
Static constructor that loads the graph from a stream SIn and returns a pointer to it. Backwards compatible.
Definition at line 2234 of file network.h.
Static constructor that loads the graph from a stream SIn and returns a pointer to it. Backwards compatible without Sparse.
Definition at line 2249 of file network.h.
void TNEANet::LoadNetworkShM | ( | TShMIn & | ShMIn | ) |
load network from shared memory for this network
Definition at line 2 of file network.cpp.
Static constructor that loads the network from memory.
The object is read-only. It does not support operations that edit the edge vectors of nodes or perform illegal operations on the NodeH, EdgeH (deletion or swapping keys).
Definition at line 2273 of file network.h.
|
inlinestatic |
Static cons returns pointer to graph. Ex: PNEANet Graph=TNEANet::New().
Definition at line 2226 of file network.h.
|
inlinestatic |
Static constructor that returns a pointer to the graph and reserves enough memory for Nodes nodes and Edges edges.
Call: PNEANet Net = TNEANet::New(Nodes, Edges).
Definition at line 2230 of file network.h.
bool TNEANet::NodeAttrIsDeleted | ( | const int & | NId, |
const TStrIntPrH::TIter & | NodeHI | ||
) | const |
Returns true if NId attr deleted for current node attr iterator.
Definition at line 246 of file network.cpp.
bool TNEANet::NodeAttrIsFltDeleted | ( | const int & | NId, |
const TStrIntPrH::TIter & | NodeHI | ||
) | const |
Returns true if NId attr deleted value for current node flt attr iterator.
Definition at line 286 of file network.cpp.
bool TNEANet::NodeAttrIsFltVDeleted | ( | const int & | NId, |
const TStrIntPrH::TIter & | NodeHI | ||
) | const |
Returns true if NId attr deleted value for current node int vector attr iterator.
Definition at line 270 of file network.cpp.
bool TNEANet::NodeAttrIsIntDeleted | ( | const int & | NId, |
const TStrIntPrH::TIter & | NodeHI | ||
) | const |
Returns true if NId attr deleted value for current node int attr iterator.
Definition at line 254 of file network.cpp.
bool TNEANet::NodeAttrIsIntVDeleted | ( | const int & | NId, |
const TStrIntPrH::TIter & | NodeHI | ||
) | const |
Returns true if NId attr deleted value for current node int vector attr iterator.
Definition at line 262 of file network.cpp.
bool TNEANet::NodeAttrIsStrDeleted | ( | const int & | NId, |
const TStrIntPrH::TIter & | NodeHI | ||
) | const |
Returns true if NId attr deleted value for current node str attr iterator.
Definition at line 278 of file network.cpp.
|
inline |
|
inline |
Saves the graph to a (binary) stream SOut. Expects data structures for sparse attributes.
Definition at line 2187 of file network.h.
|
inline |
Saves the graph to a (binary) stream SOut. Available for backwards compatibility.
Definition at line 2203 of file network.h.
|
inline |
Saves the graph without any sparse data structures. Available for backwards compatibility.
Definition at line 2213 of file network.h.
Returns a vector of str attr names for node NId.
Definition at line 2623 of file network.h.
void TNEANet::StrAttrNameEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 411 of file network.cpp.
Returns a vector of str attr names for node NId.
Definition at line 2569 of file network.h.
void TNEANet::StrAttrNameNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Names | ||
) | const |
Definition at line 175 of file network.cpp.
Returns a vector of attr values for node NId.
Definition at line 2627 of file network.h.
void TNEANet::StrAttrValueEI | ( | const TInt & | EId, |
TStrIntPrH::TIter | EdgeHI, | ||
TStrV & | Values | ||
) | const |
Definition at line 421 of file network.cpp.
Returns a vector of attr values for node NId.
Definition at line 2573 of file network.h.
void TNEANet::StrAttrValueNI | ( | const TInt & | NId, |
TStrIntPrH::TIter | NodeHI, | ||
TStrV & | Values | ||
) | const |
Definition at line 185 of file network.cpp.
|
protected |
|
protected |