utils/print-introspected-doxygen.cc
changeset 9116 c2c846c432d2
parent 8749 4462ac63d4cf
child 9124 4ee743993c0a
equal deleted inserted replaced
8995:b86c8ccff7a6 9116:c2c846c432d2
    31   std::string defgroupGlobalValueListStop;
    31   std::string defgroupGlobalValueListStop;
    32   std::string defgroupTraceSourceListStart;
    32   std::string defgroupTraceSourceListStart;
    33   std::string defgroupTraceSourceListStop;
    33   std::string defgroupTraceSourceListStop;
    34   std::string functionStart;
    34   std::string functionStart;
    35   std::string functionStop;
    35   std::string functionStop;
       
    36   std::string headingStart;
       
    37   std::string headingStop;
    36   std::string indentHtmlOnly;
    38   std::string indentHtmlOnly;
    37   std::string ingroupConstructs;
    39   std::string ingroupConstructs;
    38   std::string listStart;
    40   std::string listStart;
    39   std::string listStop;
    41   std::string listStop;
    40   std::string listLineStart;
    42   std::string listLineStart;
   362       defgroupGlobalValueListStop  = "";
   364       defgroupGlobalValueListStop  = "";
   363       defgroupTraceSourceListStart = "";
   365       defgroupTraceSourceListStart = "";
   364       defgroupTraceSourceListStop  = "\n";
   366       defgroupTraceSourceListStop  = "\n";
   365       functionStart                = "";
   367       functionStart                = "";
   366       functionStop                 = "\n\n";
   368       functionStop                 = "\n\n";
       
   369       headingStart                 = "";
       
   370       headingStop                  = "";
   367       indentHtmlOnly               = "";
   371       indentHtmlOnly               = "";
   368       ingroupConstructs            = "";
   372       ingroupConstructs            = "";
   369       listStart                    = "";
   373       listStart                    = "";
   370       listStop                     = "";
   374       listStop                     = "";
   371       listLineStart                = "    * ";
   375       listLineStart                = "    * ";
   388       defgroupAttributeListStop    = "";
   392       defgroupAttributeListStop    = "";
   389       defgroupGlobalValueListStart = "\\defgroup GlobalValueList ";
   393       defgroupGlobalValueListStart = "\\defgroup GlobalValueList ";
   390       defgroupGlobalValueListStop  = "";
   394       defgroupGlobalValueListStop  = "";
   391       defgroupTraceSourceListStart = "\\defgroup TraceSourceList ";
   395       defgroupTraceSourceListStart = "\\defgroup TraceSourceList ";
   392       defgroupTraceSourceListStop  = "";
   396       defgroupTraceSourceListStop  = "";
   393       functionStart                = "\\fn ";
   397       functionStart                = "\\class ";
   394       functionStop                 = "";
   398       functionStop                 = "";
       
   399       headingStart                 = "<h3>";
       
   400       headingStop                  = "</h3>";
   395       indentHtmlOnly               = "  ";
   401       indentHtmlOnly               = "  ";
   396       ingroupConstructs            = "\\ingroup constructs\n";
   402       ingroupConstructs            = "\\ingroup constructs\n";
   397       listStart                    = "<ul>";
   403       listStart                    = "<ul>";
   398       listStop                     = "</ul>";
   404       listStop                     = "</ul>";
   399       listLineStart                = "<li>";
   405       listLineStart                = "<li>";
   455       TypeId tid = TypeId::GetRegistered (i);
   461       TypeId tid = TypeId::GetRegistered (i);
   456       if (tid.MustHideFromDocumentation ())
   462       if (tid.MustHideFromDocumentation ())
   457 	{
   463 	{
   458 	  continue;
   464 	  continue;
   459 	}
   465 	}
   460       std::cout << functionStart << "static TypeId " << tid.GetName () << "::GetTypeId (void)" << functionStop << std::endl;
   466       std::cout << functionStart << tid.GetName () << std::endl;
   461       std::cout << brief << "This method returns the TypeId associated to " << reference << tid.GetName () << "."
   467       std::cout << std::endl;
   462 		<< std::endl << std::endl;
       
   463       std::vector<std::string> paths = info.Get (tid);
   468       std::vector<std::string> paths = info.Get (tid);
   464       if (!paths.empty ())
   469       if (!paths.empty ())
   465 	{
   470 	{
       
   471 	  std::cout << headingStart << "Config Paths" << headingStop << std::endl;
       
   472 	  std::cout << std::endl;
   466 	  std::cout << "This object is accessible through the following paths with Config::Set and Config::Connect:" 
   473 	  std::cout << "This object is accessible through the following paths with Config::Set and Config::Connect:" 
   467 		    << std::endl;
   474 		    << std::endl;
   468 	  std::cout << listStart << std::endl;
   475 	  std::cout << listStart << std::endl;
   469 	  for (uint32_t k = 0; k < paths.size (); ++k)
   476 	  for (uint32_t k = 0; k < paths.size (); ++k)
   470 	    {
   477 	    {
   477 	{
   484 	{
   478 	  std::cout << "No Attributes defined for this type." << breakBoth << std::endl;
   485 	  std::cout << "No Attributes defined for this type." << breakBoth << std::endl;
   479 	}
   486 	}
   480       else
   487       else
   481 	{
   488 	{
   482 	  std::cout << "Attributes defined for this type:" << breakHtmlOnly << std::endl;
   489 	  std::cout << headingStart << "Attributes" << headingStop << std::endl;
   483 	  PrintAttributes (tid, std::cout);
   490 	  PrintAttributes (tid, std::cout);
   484 	}
   491 	}
   485       {
   492       {
   486 	TypeId tmp = tid.GetParent ();
   493 	TypeId tmp = tid.GetParent ();
   487 	while (tmp.GetParent () != tmp)
   494 	while (tmp.GetParent () != tmp)
   488 	  {
   495 	  {
   489 	    if (tmp.GetAttributeN () != 0)
   496 	    if (tmp.GetAttributeN () != 0)
   490 	      {
   497 	      {
   491 		std::cout << "Attributes defined in parent class " << tmp.GetName () << ":" << breakHtmlOnly << std::endl;
   498 		std::cout << headingStart << "Attributes defined in parent class " << tmp.GetName () << headingStop << std::endl;
   492 		PrintAttributes (tmp, std::cout);
   499 		PrintAttributes (tmp, std::cout);
   493 	      }
   500 	      }
   494 	    tmp = tmp.GetParent ();
   501 	    tmp = tmp.GetParent ();
   495 	  }
   502 	  }
   496       }
   503       }
   498 	{
   505 	{
   499 	  std::cout << "No TraceSources defined for this type." << breakBoth << std::endl;
   506 	  std::cout << "No TraceSources defined for this type." << breakBoth << std::endl;
   500 	}
   507 	}
   501       else
   508       else
   502 	{
   509 	{
   503 	  std::cout << "TraceSources defined for this type:" << breakHtmlOnly << std::endl;
   510 	  std::cout << headingStart << "TraceSources" << headingStop << std::endl;
   504 	  PrintTraceSources (tid, std::cout);
   511 	  PrintTraceSources (tid, std::cout);
   505 	}
   512 	}
   506       {
   513       {
   507 	TypeId tmp = tid.GetParent ();
   514 	TypeId tmp = tid.GetParent ();
   508 	while (tmp.GetParent () != tmp)
   515 	while (tmp.GetParent () != tmp)
   509 	  {
   516 	  {
   510 	    if (tmp.GetTraceSourceN () != 0)
   517 	    if (tmp.GetTraceSourceN () != 0)
   511 	      {
   518 	      {
   512 		std::cout << "TraceSources defined in parent class " << tmp.GetName () << ":" << breakHtmlOnly << std::endl;
   519 		std::cout << headingStart << "TraceSources defined in parent class " << tmp.GetName () << headingStop << std::endl;
   513 		PrintTraceSources (tmp, std::cout);
   520 		PrintTraceSources (tmp, std::cout);
   514 	      }
   521 	      }
   515 	    tmp = tmp.GetParent ();
   522 	    tmp = tmp.GetParent ();
   516 	  }
   523 	  }
   517       }
   524       }