TStr GetFlagStr(const TGraphFlag& GraphFlag) { static THash<TInt, TStr> GraphFlagToStrH; if (GraphFlagToStrH.Empty()) { GraphFlagToStrH.AddDat((int) gfUndef, "Undef"); GraphFlagToStrH.AddDat((int) gfDirected, "Directed"); GraphFlagToStrH.AddDat((int) gfMultiGraph, "MultiGraph"); GraphFlagToStrH.AddDat((int) gfNodeDat, "NodeDat"); GraphFlagToStrH.AddDat((int) gfEdgeDat, "EdgeDat"); GraphFlagToStrH.AddDat((int) gfSources, "Sources"); } return GraphFlagToStrH.GetDat((int) GraphFlag); }