Public Member Functions | List of all members
InheritedMemberInfoListContext::Private Class Reference
Inheritance diagram for InheritedMemberInfoListContext::Private:
GenericNodeListContext TemplateListIntf

Public Member Functions

void addMemberList (ClassDef *inheritedFrom, MemberList *ml, MemberList *combinedList)
 
void addMemberListIncludingGrouped (ClassDef *inheritedFrom, MemberList *ml, MemberList *combinedList)
 
void addMemberGroupsOfClass (ClassDef *inheritedFrom, ClassDef *cd, MemberListType lt, MemberList *combinedList)
 
void addInheritedMembers (ClassDef *inheritedFrom, ClassDef *cd, MemberListType lt, MemberListType lt1, int lt2, const QCString &title, bool additionalList)
 
void findInheritedMembers (ClassDef *inheritedFrom, ClassDef *cd, MemberListType lt, int lt2, const QCString &title, bool additionalList, QPtrDict< void > *visitedClasses)
 
- Public Member Functions inherited from GenericNodeListContext
 GenericNodeListContext ()
 
int count () const
 
TemplateVariant at (int index) const
 
TemplateListIntf::ConstIteratorcreateIterator () const
 
void append (const TemplateVariant &ctn)
 
bool isEmpty () const
 
int addRef ()
 
int release ()
 
- Public Member Functions inherited from TemplateListIntf
virtual ~TemplateListIntf ()
 

Additional Inherited Members

- Static Public Member Functions inherited from GenericNodeListContext
static GenericNodeListContextalloc ()
 

Detailed Description

Definition at line 9091 of file context.cpp.

Member Function Documentation

void InheritedMemberInfoListContext::Private::addInheritedMembers ( ClassDef inheritedFrom,
ClassDef cd,
MemberListType  lt,
MemberListType  lt1,
int  lt2,
const QCString title,
bool  additionalList 
)
inline

Definition at line 9151 of file context.cpp.

9153  {
9154  int count = cd->countMembersIncludingGrouped(lt1,inheritedFrom,additionalList);
9155  if (lt2!=-1) count += cd->countMembersIncludingGrouped((MemberListType)lt2,inheritedFrom,additionalList);
9156  if (count>0)
9157  {
9158  MemberList *ml = cd->getMemberList(lt1);
9159  MemberList *ml2 = lt2!=-1 ? cd->getMemberList((MemberListType)lt2) : 0;
9160  MemberList *combinedList = new MemberList(lt);
9161  addMemberListIncludingGrouped(inheritedFrom,ml,combinedList);
9162  addMemberListIncludingGrouped(inheritedFrom,ml2,combinedList);
9163  addMemberGroupsOfClass(inheritedFrom,cd,lt,combinedList);
9164  if (lt2!=-1) addMemberGroupsOfClass(inheritedFrom,cd,(MemberListType)lt2,combinedList);
9165  append(InheritedMemberInfoContext::alloc(cd,combinedList,title));
9166  }
9167  }
void addMemberGroupsOfClass(ClassDef *inheritedFrom, ClassDef *cd, MemberListType lt, MemberList *combinedList)
Definition: context.cpp:9125
void append(const TemplateVariant &ctn)
Definition: context.cpp:195
static InheritedMemberInfoContext * alloc(ClassDef *cd, MemberList *ml, const QCString &title)
Definition: context.h:1074
int countMembersIncludingGrouped(MemberListType lt, ClassDef *inheritedFrom, bool additional)
Definition: classdef.cpp:4213
void addMemberListIncludingGrouped(ClassDef *inheritedFrom, MemberList *ml, MemberList *combinedList)
Definition: context.cpp:9109
MemberListType
Definition: types.h:104
MemberList * getMemberList(MemberListType lt)
Definition: classdef.cpp:4021
int count() const
Definition: context.cpp:177
void InheritedMemberInfoListContext::Private::addMemberGroupsOfClass ( ClassDef inheritedFrom,
ClassDef cd,
MemberListType  lt,
MemberList combinedList 
)
inline

Definition at line 9125 of file context.cpp.

9127  {
9128  if (cd->getMemberGroupSDict())
9129  {
9131  MemberGroup *mg;
9132  for (;(mg=mgli.current());++mgli)
9133  {
9134  if (mg->members() && (!mg->allMembersInSameSection() || !cd->subGrouping())) // group is in its own section
9135  {
9136  MemberListIterator li(*mg->members());
9137  MemberDef *md;
9138  for (li.toFirst();(md=li.current());++li)
9139  {
9140  if (lt==md->getSectionList(mg->parent())->listType() &&
9141  !md->isReimplementedBy(inheritedFrom) &&
9142  md->isBriefSectionVisible())
9143  {
9144  combinedList->append(md);
9145  }
9146  }
9147  }
9148  }
9149  }
9150  }
void append(const MemberDef *md)
Definition: memberlist.cpp:246
friend class Iterator
Definition: sortdict.h:598
static constexpr double mg
Definition: Units.h:145
bool subGrouping() const
Definition: classdef.cpp:4738
MemberGroupSDict * getMemberGroupSDict() const
Definition: classdef.cpp:4524
void InheritedMemberInfoListContext::Private::addMemberList ( ClassDef inheritedFrom,
MemberList ml,
MemberList combinedList 
)
inline

Definition at line 9094 of file context.cpp.

9095  {
9096  if (ml)
9097  {
9098  MemberListIterator li(*ml);
9099  MemberDef *md;
9100  for (li.toFirst();(md=li.current());++li)
9101  {
9102  if (md->isBriefSectionVisible() && !md->isReimplementedBy(inheritedFrom))
9103  {
9104  combinedList->append(md);
9105  }
9106  }
9107  }
9108  }
void append(const MemberDef *md)
Definition: memberlist.cpp:246
bool isBriefSectionVisible() const
Definition: memberdef.cpp:1289
bool isReimplementedBy(ClassDef *cd) const
Definition: memberdef.cpp:888
void InheritedMemberInfoListContext::Private::addMemberListIncludingGrouped ( ClassDef inheritedFrom,
MemberList ml,
MemberList combinedList 
)
inline

Definition at line 9109 of file context.cpp.

9110  {
9111  if (ml)
9112  {
9113  addMemberList(inheritedFrom,ml,combinedList);
9114  if (ml->getMemberGroupList())
9115  {
9117  MemberGroup *mg;
9118  for (mgli.toFirst();(mg=mgli.current());++mgli)
9119  {
9120  addMemberList(inheritedFrom,mg->members(),combinedList);
9121  }
9122  }
9123  }
9124  }
MemberGroupList * getMemberGroupList() const
Definition: memberlist.h:78
static constexpr double mg
Definition: Units.h:145
void addMemberList(ClassDef *inheritedFrom, MemberList *ml, MemberList *combinedList)
Definition: context.cpp:9094
void InheritedMemberInfoListContext::Private::findInheritedMembers ( ClassDef inheritedFrom,
ClassDef cd,
MemberListType  lt,
int  lt2,
const QCString title,
bool  additionalList,
QPtrDict< void > *  visitedClasses 
)
inline

Definition at line 9168 of file context.cpp.

9171  {
9172  if (cd->baseClasses())
9173  {
9175  BaseClassDef *ibcd;
9176  for (it.toFirst();(ibcd=it.current());++it)
9177  {
9178  ClassDef *icd=ibcd->classDef;
9179  if (icd->isLinkable())
9180  {
9181  int lt1,lt3;
9182  convertProtectionLevel(lt,ibcd->prot,&lt1,&lt3);
9183  if (lt2==-1 && lt3!=-1)
9184  {
9185  lt2=lt3;
9186  }
9187  if (visitedClasses->find(icd)==0)
9188  {
9189  visitedClasses->insert(icd,icd); // guard for multiple virtual inheritance
9190  if (lt1!=-1)
9191  {
9192  // add member info for members of cd with list type lt
9193  addInheritedMembers(inheritedFrom,icd,lt,(MemberListType)lt1,lt2,title,additionalList);
9194  // recurse down the inheritance tree
9195  findInheritedMembers(inheritedFrom,icd,(MemberListType)lt1,lt2,title,additionalList,visitedClasses);
9196  }
9197  }
9198  }
9199  }
9200  }
9201  }
void addInheritedMembers(ClassDef *inheritedFrom, ClassDef *cd, MemberListType lt, MemberListType lt1, int lt2, const QCString &title, bool additionalList)
Definition: context.cpp:9151
void findInheritedMembers(ClassDef *inheritedFrom, ClassDef *cd, MemberListType lt, int lt2, const QCString &title, bool additionalList, QPtrDict< void > *visitedClasses)
Definition: context.cpp:9168
void insert(void *k, const type *d)
Definition: qptrdict.h:57
type * find(void *k) const
Definition: qptrdict.h:63
bool isLinkable() const
Definition: classdef.cpp:2729
MemberListType
Definition: types.h:104
void convertProtectionLevel(MemberListType inListType, Protection inProt, int *outListType1, int *outListType2)
Definition: util.cpp:8378
BaseClassList * baseClasses() const
Definition: classdef.cpp:4399

The documentation for this class was generated from the following file: