简体   繁体   English

有关struct doxygen的所有参考文献列表

[英]List of all references to struct doxygen

I'm trying to build documentation using doxygen 1.8.8 based on a large set of structs, and would like for the documentation to reference not only which structs I'm having, but also where the structs are used. 我正在尝试使用基于大量结构的doxygen 1.8.8构建文档,并且希望该文档不仅引用我拥有的结构,还引用结构的使用位置。 Please note that the source code is constructed from an external system, where I do some search and replace to make it into a structure similar to the following: 请注意,源代码是从外部系统构建的,我在其中进行了一些搜索和替换以使其类似于以下结构:

struct intersect {
  int aValue;     
};

struct foo_intersect_SET {
  order next;
  foo owner;
  intersect member;
};

struct intersect_bar_SET {
  order next;
  intersect owner;
  bar member;
};

struct another_SET {
  order ascending;
  something owner;
  foo member;
  bar member2;
  intersect member3;
};

I can get doxygen to build documentation, but when searching for "intersect" it only shows "intersect" and "intersect_bar_SET", I would like it to also display the "foo_intersect_SET" and possibly "another_SET". 我可以得到doxygen来生成文档,但是当搜索“ intersect”时,它仅显示“ intersect”和“ intersect_bar_SET”,我希望它也显示“ foo_intersect_SET”,可能还显示“ another_SET”。

And also when viewing the "intersect" struct I would like to get a list where it is used, ie that it is used by both "foo_intersect_SET", "intersect_bar_SET" and "another_SET". 而且,当查看“ intersect”结构时,我想获得使用它的列表,即“ foo_intersect_SET”,“ intersect_bar_SET”和“ another_SET”都使用它。

Do you know if either of these are possible using doxygen? 您知道使用脱氧剂是否有可能?

One possible way to address this, which I'm currently pursueing is to change the structs into classes, and using multiple inheritance to get the connections both ways. 解决这个问题的一种可能的方法,我目前正在追求的是将结构更改为类,并使用多重继承来双向获取连接。 In other words I have to make a temporary version which currently looks something like: 换句话说,我必须制作一个临时版本,目前看起来像这样:

class foo : protected another {
}

class bar : proteced intersect_bar, protected another {
}

class intersect : protected foo_intersect, protected another {
  int aValue;     
};

class foo_intersect : private foo {
  order next;
  foo o_foo;
  intersect m_intersect;
};

class intersect_bar : private intersect {
  order next;
  intersect o_intersect;
  bar m_bar;
};

class another : private something {
  order ascending;
  something o_something;
  foo m_foo;
  bar m_bar;
  intersect m_intersect;
};

This is not an ideal solution, but using the inheritance diagram and collaboration diagram I do get most of the information that I want out of it! 这不是一个理想的解决方案,但是使用继承图和协作图,我确实从中获得了我想要的大部分信息! One caveat is that the original set structure allows for circular definitions, which in turn leads to circular inheritance which of course is not legal... 需要注意的是,原始集合结构允许循环定义,这反过来导致循环继承,这当然是不合法的...

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM