SNAP Library 4.0, Developer Reference  2017-07-27 13:18:06
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI Class Reference

Edge iterator. Only forward iteration (operator++) is supported. More...

#include <network.h>

Collaboration diagram for TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI:

Public Member Functions

 TEdgeI ()
 
 TEdgeI (const THashIter &EdgeHIter, const TNodeEdgeNet *NetPt)
 
 TEdgeI (const TEdgeI &EdgeI)
 
TEdgeIoperator= (const TEdgeI &EdgeI)
 
TEdgeIoperator++ (int)
 
bool operator< (const TEdgeI &EdgeI) const
 
bool operator== (const TEdgeI &EdgeI) const
 
int GetId () const
 Gets edge ID. More...
 
int GetSrcNId () const
 Gets the source of an edge. More...
 
int GetDstNId () const
 Gets destination of an edge. More...
 
const TEdgeData & operator() () const
 
TEdgeData & operator() ()
 
const TEdgeData & GetDat () const
 
TEdgeData & GetDat ()
 
const TNodeData & GetSrcNDat () const
 
TNodeData & GetSrcNDat ()
 
const TNodeData & GetDstNDat () const
 
TNodeData & GetDstNDat ()
 

Private Types

typedef THash< TInt, TEdge >::TIter THashIter
 

Private Attributes

THashIter EdgeHI
 
TNodeEdgeNetNet
 

Friends

class TNodeEdgeNet
 

Detailed Description

template<class TNodeData, class TEdgeData>
class TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI

Edge iterator. Only forward iteration (operator++) is supported.

Definition at line 1219 of file network.h.

Member Typedef Documentation

template<class TNodeData, class TEdgeData>
typedef THash<TInt, TEdge>::TIter TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::THashIter
private

Definition at line 1221 of file network.h.

Constructor & Destructor Documentation

template<class TNodeData, class TEdgeData>
TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::TEdgeI ( )
inline

Definition at line 1225 of file network.h.

1225 : EdgeHI(), Net(NULL) { }
THashIter EdgeHI
Definition: network.h:1222
TNodeEdgeNet * Net
Definition: network.h:1223
template<class TNodeData, class TEdgeData>
TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::TEdgeI ( const THashIter EdgeHIter,
const TNodeEdgeNet NetPt 
)
inline

Definition at line 1226 of file network.h.

1226 : EdgeHI(EdgeHIter), Net((TNodeEdgeNet *) NetPt) { }
THashIter EdgeHI
Definition: network.h:1222
Node Edge Network (directed multigraph, TNEGraph with data on nodes and edges).
Definition: network.h:1074
TNodeEdgeNet * Net
Definition: network.h:1223
template<class TNodeData, class TEdgeData>
TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::TEdgeI ( const TEdgeI EdgeI)
inline

Definition at line 1227 of file network.h.

1227 : EdgeHI(EdgeI.EdgeHI), Net(EdgeI.Net) { }
THashIter EdgeHI
Definition: network.h:1222
TNodeEdgeNet * Net
Definition: network.h:1223

Member Function Documentation

template<class TNodeData, class TEdgeData>
const TEdgeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDat ( ) const
inline

Definition at line 1240 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

Referenced by TNodeEdgeNet< TNodeData, TEdgeData >::SetEDat().

1240 { return EdgeHI.GetDat().GetDat(); }
THashIter EdgeHI
Definition: network.h:1222

Here is the caller graph for this function:

template<class TNodeData, class TEdgeData>
TEdgeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDat ( )
inline

Definition at line 1241 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

1241 { return EdgeHI.GetDat().GetDat(); }
THashIter EdgeHI
Definition: network.h:1222
template<class TNodeData, class TEdgeData>
const TNodeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDstNDat ( ) const
inline

Definition at line 1244 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDstNId(), TNodeEdgeNet< TNodeData, TEdgeData >::GetNDat(), and TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::Net.

1244 { return Net->GetNDat(GetDstNId()); }
TNodeData & GetNDat(const int &NId)
Returns node data for the node of ID NId in the network.
Definition: network.h:1346
TNodeEdgeNet * Net
Definition: network.h:1223
int GetDstNId() const
Gets destination of an edge.
Definition: network.h:1237

Here is the call graph for this function:

template<class TNodeData, class TEdgeData>
TNodeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDstNDat ( )
inline

Definition at line 1245 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDstNId(), TNodeEdgeNet< TNodeData, TEdgeData >::GetNDat(), and TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::Net.

1245 { return Net->GetNDat(GetDstNId()); }
TNodeData & GetNDat(const int &NId)
Returns node data for the node of ID NId in the network.
Definition: network.h:1346
TNodeEdgeNet * Net
Definition: network.h:1223
int GetDstNId() const
Gets destination of an edge.
Definition: network.h:1237

Here is the call graph for this function:

template<class TNodeData, class TEdgeData>
int TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDstNId ( ) const
inline

Gets destination of an edge.

Definition at line 1237 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

Referenced by TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetDstNDat().

1237 { return EdgeHI.GetDat().GetDstNId(); }
THashIter EdgeHI
Definition: network.h:1222

Here is the caller graph for this function:

template<class TNodeData, class TEdgeData>
int TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetId ( ) const
inline

Gets edge ID.

Definition at line 1233 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

1233 { return EdgeHI.GetDat().GetId(); }
THashIter EdgeHI
Definition: network.h:1222
template<class TNodeData, class TEdgeData>
const TNodeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetSrcNDat ( ) const
inline

Definition at line 1242 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::GetNDat(), TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetSrcNId(), and TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::Net.

1242 { return Net->GetNDat(GetSrcNId()); }
TNodeData & GetNDat(const int &NId)
Returns node data for the node of ID NId in the network.
Definition: network.h:1346
int GetSrcNId() const
Gets the source of an edge.
Definition: network.h:1235
TNodeEdgeNet * Net
Definition: network.h:1223

Here is the call graph for this function:

template<class TNodeData, class TEdgeData>
TNodeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetSrcNDat ( )
inline

Definition at line 1243 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::GetNDat(), TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetSrcNId(), and TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::Net.

1243 { return Net->GetNDat(GetSrcNId()); }
TNodeData & GetNDat(const int &NId)
Returns node data for the node of ID NId in the network.
Definition: network.h:1346
int GetSrcNId() const
Gets the source of an edge.
Definition: network.h:1235
TNodeEdgeNet * Net
Definition: network.h:1223

Here is the call graph for this function:

template<class TNodeData, class TEdgeData>
int TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetSrcNId ( ) const
inline

Gets the source of an edge.

Definition at line 1235 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

Referenced by TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::GetSrcNDat().

1235 { return EdgeHI.GetDat().GetSrcNId(); }
THashIter EdgeHI
Definition: network.h:1222

Here is the caller graph for this function:

template<class TNodeData, class TEdgeData>
const TEdgeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::operator() ( ) const
inline

Definition at line 1238 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

1238 { return EdgeHI.GetDat().GetDat(); }
THashIter EdgeHI
Definition: network.h:1222
template<class TNodeData, class TEdgeData>
TEdgeData& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::operator() ( )
inline

Definition at line 1239 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

1239 { return EdgeHI.GetDat().GetDat(); }
THashIter EdgeHI
Definition: network.h:1222
template<class TNodeData, class TEdgeData>
TEdgeI& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::operator++ ( int  )
inline

Definition at line 1229 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

1229 { EdgeHI++; return *this; }
THashIter EdgeHI
Definition: network.h:1222
template<class TNodeData, class TEdgeData>
bool TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::operator< ( const TEdgeI EdgeI) const
inline

Definition at line 1230 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

1230 { return EdgeHI < EdgeI.EdgeHI; }
THashIter EdgeHI
Definition: network.h:1222
template<class TNodeData, class TEdgeData>
TEdgeI& TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::operator= ( const TEdgeI EdgeI)
inline

Definition at line 1228 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI, and TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::Net.

1228 { if (this!=&EdgeI) { EdgeHI=EdgeI.EdgeHI; Net=EdgeI.Net; } return *this; }
THashIter EdgeHI
Definition: network.h:1222
TNodeEdgeNet * Net
Definition: network.h:1223
template<class TNodeData, class TEdgeData>
bool TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::operator== ( const TEdgeI EdgeI) const
inline

Definition at line 1231 of file network.h.

References TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::EdgeHI.

1231 { return EdgeHI == EdgeI.EdgeHI; }
THashIter EdgeHI
Definition: network.h:1222

Friends And Related Function Documentation

template<class TNodeData, class TEdgeData>
friend class TNodeEdgeNet
friend

Definition at line 1246 of file network.h.

Member Data Documentation

template<class TNodeData, class TEdgeData>
TNodeEdgeNet* TNodeEdgeNet< TNodeData, TEdgeData >::TEdgeI::Net
private

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