00001 /*-------------------------------------------------------------------- 00002 * 00003 * (C) Copyright Koninklijke Philips Electronics NV 2006. 00004 * All rights reserved. This software is licensed under the terms of 00005 * version 2.1 of the GNU Lesser General Public License as published 00006 * by the Free Software Foundation. For licensing and warranty 00007 * information, see the file COPYING in the main directory. 00008 * 00009 *------------------------------------------------------------------*/ 00010 00011 #ifndef DOTDEFS_H 00012 #define DOTDEFS_H 00013 00014 #include <string> 00015 #include <iostream> 00016 00017 class DotDefs 00018 { 00019 public: 00020 00021 // Level of Hierarchy: 00022 static int levelInit; 00023 00024 // Colors: 00025 static std::string nodeColorProcessNetwork; 00026 static std::string nodeColorProcess; 00027 static std::string nodeColorPort; 00028 static std::string nodeColorFifo; 00029 static std::string fontColorClusterTitle; 00030 static std::string fontColorProcessNetwork; 00031 static std::string fontColorProcess; 00032 static std::string fontColorPort; 00033 static std::string fontColorFifo; 00034 00035 // Nodes: 00036 static std::string nodeFifo; 00037 static std::string nodeStyle; 00038 static std::string nodeShapeProcessNetwork; 00039 static std::string nodeShapeProcess; 00040 static std::string nodeShapePort; 00041 static std::string nodeShapeFifo; 00042 static std::string nodeWidthProcessNetwork; 00043 static std::string nodeHeightProcessNetwork; 00044 static std::string nodeWidthProcess; 00045 static std::string nodeHeightProcess; 00046 static std::string nodeWidthPort; 00047 static std::string nodeHeightPort; 00048 static std::string nodeWidthFifo; 00049 static std::string nodeHeightFifo; 00050 00051 // Edges: 00052 static std::string edgeDecorate; 00053 static int edgeMinLen; 00054 static int edgeWeight; 00055 00056 // Fonts: 00057 static std::string fontNameClusterTitle; 00058 static std::string fontNameProcessNetwork; 00059 static std::string fontNameProcess; 00060 static std::string fontNamePort; 00061 static std::string fontNameFifo; 00062 static int fontSizeClusterTitle; 00063 static int fontSizeProcessNetwork; 00064 static int fontSizeProcess; 00065 static int fontSizePort; 00066 static int fontSizeFifo; 00067 00068 // Attributes: 00069 static std::string nodeSep; 00070 static std::string ratio; 00071 static std::string center; 00072 00073 // Page setup: 00074 static std::string rankDir; 00075 static std::string size; 00076 static std::string orientation; 00077 static std::string margin; 00078 00079 // Dummy: 00080 static std::string dummy; 00081 }; 00082 00083 inline void dotDefsSetErrorStream(std::ostream& e); 00084 00085 // Parser Functions: 00086 void addOptionString(std::string p, std::string q); 00087 void addOptionInteger(std::string s, int n); 00088 00089 #endif