SNAP Library 2.0, User Reference  2013-05-13 16:33:57
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
gbase.h File Reference

Go to the source code of this file.

Classes

struct  TSnap::IsDirected< TGraph >
 Tests (at compile time) if the graph is directed. More...
struct  TSnap::IsMultiGraph< TGraph >
 Tests (at compile time) if the graph is a multigraph with multiple edges between the same nodes. More...
struct  TSnap::IsNodeDat< TGraph >
 Tests (at compile time) if the graph is a network with data on nodes. More...
struct  TSnap::IsEdgeDat< TGraph >
 Tests (at compile time) if the graph is a network with data on edges. More...
struct  TSnap::IsSources< TGraph >
 Tests (at compile time) if the nodes store only out-edges, but not in-edges. More...
struct  TSnap::IsBipart< TGraph >
 Tests (at compile time) if the graph is a bipartite graph type. More...
class  TSnap::IsDerivedFrom< TDerivClass, TBaseClass >
 Tests (at compile time) whether TDerivClass is derived from TBaseClass. More...
struct  TSnap::IsDerivedFrom< TDerivClass, TBaseClass >::Yes
struct  TSnap::IsDerivedFrom< TDerivClass, TBaseClass >::No
class  TSnapQueue< TVal >
 Fast Queue used by the TBreathFS (uses memcpy to move objects TVal around). More...
class  TUnionFind
 Union Find class (Disjoint-set data structure). More...
class  THeap< TVal, TCmp >
 Simple heap data structure. More...

Namespaces

namespace  TSnap
 Main namespace for all the Snap global entities.

Defines

#define Kilo(n)   (1000*(n))
#define Mega(n)   (1000*1000*(n))
#define Giga(n)   (1000*1000*1000*(n))
#define HasGraphFlag(TGraph, Flag)
 For quick testing of the properties of the graph/network object (see TGraphFlag).

Enumerations

enum  TGraphFlag {
  gfUndef = 0, gfDirected, gfMultiGraph, gfNodeDat,
  gfEdgeDat, gfSources, gfBipart, gfMx
}
 Graph Flags, used for quick testing of graph types. More...

Functions

TStr TSnap::GetFlagStr (const TGraphFlag &GraphFlag)
 Returns a string representation of a flag.
template<class PGraph >
void TSnap::PrintInfo (const PGraph &Graph, const TStr &Desc="", const TStr &OutFNm="", const bool &Fast=true)
 Prints basic graph statistics.
template<class PGraph >
int64 TSnap::GetTriads (const PGraph &Graph, int64 &ClosedTriads, int64 &OpenTriads, int SampleNodes)
 Computes the number of Closed and Open triads.

Define Documentation

#define Giga (   n)    (1000*1000*1000*(n))

Definition at line 5 of file gbase.h.

#define HasGraphFlag (   TGraph,
  Flag 
)
Value:

For quick testing of the properties of the graph/network object (see TGraphFlag).

Definition at line 38 of file gbase.h.

#define Kilo (   n)    (1000*(n))

Definition at line 3 of file gbase.h.

#define Mega (   n)    (1000*1000*(n))

Definition at line 4 of file gbase.h.


Enumeration Type Documentation

enum TGraphFlag

Graph Flags, used for quick testing of graph types.

This is very useful for testing graph properties at compile time for partial template specialization as well as compile time assert (CAssert).

Enumerator:
gfUndef 

default value, no flags

gfDirected 

directed graph (TNGraph, TNEGraph), else graph is undirected TUNGraph

gfMultiGraph 

have explicit edges (multigraph): TNEGraph, TNodeEdgeNet

gfNodeDat 

network with data on nodes

gfEdgeDat 

network with data on edges

gfSources 

nodes only store out-edges (but not in-edges). See TBigNet

gfBipart 

bipartite graph

gfMx 

sentinel, last value for iteration

Definition at line 11 of file gbase.h.