core: Additional code for ability to generate subset of documentation by utils/print-introspected-doxygen
This commit is contained in:
1 parent
4da74c6430
commit
2c66f4c020
1 file changed
+56
-50
@@ -843,6 +843,7 @@ typedef struct {
|
||||
const std::string m_type; //!< The name of the underlying type.
|
||||
const bool m_seeBase; //!< Print a "see also" pointing to the base class.
|
||||
const std::string m_header; //!< The header file name.
|
||||
const std::string m_group; //!< Group name
|
||||
} AttributeDescriptor;
|
||||
|
||||
|
||||
@@ -879,69 +880,74 @@ PrintAttributeImplementations (std::ostream & os)
|
||||
{
|
||||
// Users of ATTRIBUTE_HELPER_HEADER
|
||||
//
|
||||
{ "Address", "Address", true, "address.h" },
|
||||
{ "Box", "Box", true, "box.h" },
|
||||
{ "DataRate", "DataRate", true, "data-rate.h" },
|
||||
{ "HtCapabilities", "HtCapabilities", true, "ht-capabilities.h" },
|
||||
{ "IeMeshId", "IeMeshId", true, "id-dot11s-id.h" },
|
||||
{ "Ipv4Address", "Ipv4Address", true, "ipv4-address.h" },
|
||||
{ "Ipv4Mask", "Ipv4Mask", true, "ipv4-address.h" },
|
||||
{ "Ipv6Address", "Ipv6Address", true, "ipv6-address.h" },
|
||||
{ "Ipv6Prefix", "Ipv6Prefix", true, "ipv6-address.h" },
|
||||
{ "Mac16Address", "Mac16Address", true, "mac16-address.h" },
|
||||
{ "Mac48Address", "Mac48Address", true, "mac48-address.h" },
|
||||
{ "Mac64Address", "Mac64Address", true, "mac64-address.h" },
|
||||
{ "ObjectFactory", "ObjectFactory", true, "object-factory.h" },
|
||||
{ "Address", "Address", true, "address.h", "Network" },
|
||||
{ "Box", "Box", true, "box.h", "Mobility" },
|
||||
{ "DataRate", "DataRate", true, "data-rate.h", "Network" },
|
||||
{ "HtCapabilities", "HtCapabilities", true, "ht-capabilities.h", "Wifi" },
|
||||
{ "IeMeshId", "IeMeshId", true, "id-dot11s-id.h", "Wifi" },
|
||||
{ "Ipv4Address", "Ipv4Address", true, "ipv4-address.h", "Network" },
|
||||
{ "Ipv4Mask", "Ipv4Mask", true, "ipv4-address.h", "Network" },
|
||||
{ "Ipv6Address", "Ipv6Address", true, "ipv6-address.h", "Network" },
|
||||
{ "Ipv6Prefix", "Ipv6Prefix", true, "ipv6-address.h", "Network" },
|
||||
{ "Mac16Address", "Mac16Address", true, "mac16-address.h", "Network" },
|
||||
{ "Mac48Address", "Mac48Address", true, "mac48-address.h", "Network" },
|
||||
{ "Mac64Address", "Mac64Address", true, "mac64-address.h", "Network" },
|
||||
{ "ObjectFactory", "ObjectFactory", true, "object-factory.h", "Core" },
|
||||
{ "OrganizationIdentifier",
|
||||
"OrganizationIdentifier",
|
||||
true, "vendor-specific-action.h" },
|
||||
{ "Rectangle", "Rectangle", true, "rectangle.h" },
|
||||
{ "Ssid", "Ssid", true, "ssid.h" },
|
||||
{ "TypeId", "TypeId", true, "type-id.h" },
|
||||
{ "UanModesList", "UanModesList", true, "uan-tx-mode.h" },
|
||||
{ "ValueClassTest", "ValueClassTest", false, "" /* outside ns3 */ },
|
||||
{ "Vector2D", "Vector2D", true, "vector.h" },
|
||||
{ "Vector3D", "Vector3D", true, "vector.h" },
|
||||
{ "Waypoint", "Waypoint", true, "waypoint.h" },
|
||||
{ "WifiMode", "WifiMode", true, "wifi-mode.h" },
|
||||
|
||||
true, "vendor-specific-action.h", "Wave" },
|
||||
{ "Rectangle", "Rectangle", true, "rectangle.h", "Mobility" },
|
||||
{ "Ssid", "Ssid", true, "ssid.h", "Wifi" },
|
||||
{ "TypeId", "TypeId", true, "type-id.h", "Core" },
|
||||
{ "UanModesList", "UanModesList", true, "uan-tx-mode.h", "Uan" },
|
||||
{ "ValueClassTest", "ValueClassTest", false, "" /* outside ns3 */, "Core" },
|
||||
{ "Vector2D", "Vector2D", true, "vector.h", "Core" },
|
||||
{ "Vector3D", "Vector3D", true, "vector.h", "Core" },
|
||||
{ "Waypoint", "Waypoint", true, "waypoint.h", "Mobility" },
|
||||
{ "WifiMode", "WifiMode", true, "wifi-mode.h", "Wifi" },
|
||||
|
||||
// All three (Value, Access and Checkers) defined, but custom
|
||||
{ "Boolean", "Boolean", false, "boolean.h" },
|
||||
{ "Callback", "Callback", true, "callback.h" },
|
||||
{ "Double", "double", false, "double.h" },
|
||||
{ "Enum", "int", false, "enum.h" },
|
||||
{ "Integer", "int64_t", false, "integer.h" },
|
||||
{ "Pointer", "Pointer", false, "pointer.h" },
|
||||
{ "RandomVariable", "RandomVariable", true, "random-variable.h" },
|
||||
{ "String", "std::string", false, "string.h" },
|
||||
{ "Time", "Time", true, "nstime.h" },
|
||||
{ "Uinteger", "uint64_t", false, "uinteger.h" },
|
||||
{ "", "", false, "last placeholder" }
|
||||
{ "Boolean", "Boolean", false, "boolean.h", "Core" },
|
||||
{ "Callback", "Callback", true, "callback.h", "Core" },
|
||||
{ "Double", "double", false, "double.h", "Core" },
|
||||
{ "Enum", "int", false, "enum.h", "Core" },
|
||||
{ "Integer", "int64_t", false, "integer.h", "Core" },
|
||||
{ "Pointer", "Pointer", false, "pointer.h", "Core" },
|
||||
{ "RandomVariable", "RandomVariable", true, "random-variable.h", "Core" },
|
||||
{ "String", "std::string", false, "string.h", "Core" },
|
||||
{ "Time", "Time", true, "nstime.h", "Core" },
|
||||
{ "Uinteger", "uint64_t", false, "uinteger.h", "Core" },
|
||||
{ "", "", false, "last placeholder", "" }
|
||||
};
|
||||
|
||||
int i = 0;
|
||||
while (attributes[i].m_name != "")
|
||||
for (size_t i = 0; attributes[i].m_name != ""; ++i)
|
||||
{
|
||||
if (!g_showGroupOnly.empty() && attributes[i].m_name != g_showGroupOnly)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
PrintAttributeHelper (os, attributes[i]);
|
||||
++i;
|
||||
}
|
||||
|
||||
// Special cases
|
||||
PrintAttributeValueSection (os, "EmptyAttribute", false);
|
||||
PrintAttributeValueWithName (os, "EmptyAttribute", "EmptyAttribute",
|
||||
"attribute.h");
|
||||
if (!g_showGroupOnly.empty() && g_showGroupOnly == "Core")
|
||||
{
|
||||
PrintAttributeValueSection (os, "EmptyAttribute", false);
|
||||
PrintAttributeValueWithName (os, "EmptyAttribute", "EmptyAttribute",
|
||||
"attribute.h");
|
||||
|
||||
PrintAttributeValueSection (os, "ObjectPtrContainer", false);
|
||||
PrintAttributeValueWithName (os, "ObjectPtrContainer", "ObjectPtrContainer", "object-ptr-container.h");
|
||||
PrintMakeChecker (os, "ObjectPtrContainer", "object-ptr-container.h");
|
||||
PrintAttributeValueSection (os, "ObjectPtrContainer", false);
|
||||
PrintAttributeValueWithName (os, "ObjectPtrContainer", "ObjectPtrContainer", "object-ptr-container.h");
|
||||
PrintMakeChecker (os, "ObjectPtrContainer", "object-ptr-container.h");
|
||||
|
||||
PrintAttributeValueSection (os, "ObjectVector", false);
|
||||
PrintMakeAccessors (os, "ObjectVector");
|
||||
PrintMakeChecker (os, "ObjectVector", "object-vector.h");
|
||||
PrintAttributeValueSection (os, "ObjectVector", false);
|
||||
PrintMakeAccessors (os, "ObjectVector");
|
||||
PrintMakeChecker (os, "ObjectVector", "object-vector.h");
|
||||
|
||||
PrintAttributeValueSection (os, "ObjectMap", false);
|
||||
PrintMakeAccessors (os, "ObjectMap");
|
||||
PrintMakeChecker (os, "ObjectMap", "object-map.h");
|
||||
PrintAttributeValueSection (os, "ObjectMap", false);
|
||||
PrintMakeAccessors (os, "ObjectMap");
|
||||
PrintMakeChecker (os, "ObjectMap", "object-map.h");
|
||||
}
|
||||
|
||||
} // PrintAttributeImplementations ()
|
||||
|
||||
|
||||
Reference in new issue
Block a user