SNAP Library 2.4, Developer Reference  2015-05-11 19:40:56
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 1110 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 1112 of file network.h.

Constructor & Destructor Documentation

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

Definition at line 1116 of file network.h.

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

Definition at line 1117 of file network.h.

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

Definition at line 1118 of file network.h.

1118 : EdgeHI(EdgeI.EdgeHI), Net(EdgeI.Net) { }
THashIter EdgeHI
Definition: network.h:1113
TNodeEdgeNet * Net
Definition: network.h:1114

Member Function Documentation

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

Definition at line 1131 of file network.h.

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

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

1131 { return EdgeHI.GetDat().GetDat(); }
THashIter EdgeHI
Definition: network.h:1113

Here is the caller graph for this function:

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

Definition at line 1132 of file network.h.

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

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

Definition at line 1135 of file network.h.

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

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

Here is the call graph for this function:

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

Definition at line 1136 of file network.h.

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

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

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 1128 of file network.h.

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

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

1128 { return EdgeHI.GetDat().GetDstNId(); }
THashIter EdgeHI
Definition: network.h:1113

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 1124 of file network.h.

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

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

Definition at line 1133 of file network.h.

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

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

Here is the call graph for this function:

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

Definition at line 1134 of file network.h.

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

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

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 1126 of file network.h.

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

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

1126 { return EdgeHI.GetDat().GetSrcNId(); }
THashIter EdgeHI
Definition: network.h:1113

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 1129 of file network.h.

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

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

Definition at line 1130 of file network.h.

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

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

Definition at line 1120 of file network.h.

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

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

Definition at line 1121 of file network.h.

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

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

Definition at line 1119 of file network.h.

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

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

Definition at line 1122 of file network.h.

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

1122 { return EdgeHI == EdgeI.EdgeHI; }
THashIter EdgeHI
Definition: network.h:1113

Friends And Related Function Documentation

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

Definition at line 1137 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: