FREEDM DGI
|
Provides the Physical Topology Architecture. More...
#include <CPhysicalTopology.hpp>
Public Types | |
typedef std::map< std::string, VertexSet > | AdjacencyListMap |
typedef std::multimap < VertexPair, std::string > | FIDControlMap |
typedef std::map< std::string, bool > | FIDState |
typedef std::pair< std::string, std::string > | VertexPair |
typedef std::set< std::string > | VertexSet |
Public Member Functions | |
bool | IsAvailable () |
Returns if the physical topology is available. More... | |
VertexSet | ReachablePeers (std::string source, FIDState fidstate) |
Find the reachable peers. More... | |
Static Public Member Functions | |
static CPhysicalTopology & | Instance () |
Get the singleton instance of this class. More... | |
Private Member Functions | |
CPhysicalTopology () | |
Private constructor for the singleton instance. More... | |
void | LoadTopology () |
Load the topology from a file. More... | |
std::string | RealNameFromVirtual (std::string vname) |
Gets the realname from the virtual name. More... | |
Private Attributes | |
AdjacencyListMap | m_adjlist |
bool | m_available |
Which edges FIDs control. More... | |
FIDControlMap | m_fidcontrol |
Structure of physical layer. More... | |
std::map< std::string, std::string > | m_strans |
If a physical topology has been loaded. More... | |
Provides the physical topology of the power system. It gets read from a file. There is documentation on the wiki.
It's really important that we have this long documentation, even though there is nothing to say that would actually be helpful: look at the only (public) function in this class.
typedef std::map<std::string, VertexSet > freedm::broker::CPhysicalTopology::AdjacencyListMap |
typedef std::multimap<VertexPair, std::string> freedm::broker::CPhysicalTopology::FIDControlMap |
typedef std::map<std::string, bool> freedm::broker::CPhysicalTopology::FIDState |
typedef std::pair< std::string, std::string > freedm::broker::CPhysicalTopology::VertexPair |
typedef std::set<std::string> freedm::broker::CPhysicalTopology::VertexSet |
|
private |
CPhysicalTopology::CPhysicalTopology
|
static |
bool freedm::broker::CPhysicalTopology::IsAvailable | ( | ) |
CPhysicalTopology::IsAvailable
|
private |
CPhysicalTopology::LoadTopology
CPhysicalTopology::VertexSet freedm::broker::CPhysicalTopology::ReachablePeers | ( | std::string | source, |
CPhysicalTopology::FIDState | fidstate | ||
) |
source | The initial vertex to perform BFS from. |
fidstate | a map that is FID Name -> State. A closed FID is true, an open FID is false. If an FID is open edges it controls are not used. |
|
private |
CPhysicalTopology::RealNameFromVirtual
vname | the virtual name to look up. |
|
private |
|
private |
|
private |
|
private |