Interface ICompound

  • All Superinterfaces:
    IDocumentedElement
    All Known Subinterfaces:
    IClass, IDir, IException, IFile, IGroup, IInterface, INamespace, IPage, IStruct, IUnion
    All Known Implementing Classes:
    CompoundHandler

    public interface ICompound
    extends IDocumentedElement
    The public interface to a compound in the object model. A compound has a name which can be obtained via the name() method and a unique id, which is return via the id() method. A compound consists zero or more members which are grouped into sections. The sections() method can be used to access the individual sections. Alternatively, members can be obtained by name or id. There are different types of compounds. The kind() method returns what kind of compound this is. Depending on the return value one can dynamically cast an public interface pointer to an more specialised public interface that provides additional methods. Example: \code ICompound *comp=...; if (comp->kind()==ICompound::Class) { IClass *cls = dynamic_cast(comp); // use methods of IClass } \endcode The documentation that is provided by a compound is available via the briefDescription() and detailedDescription() methods. To avoid excessive memory usage, release() should be called (once) on each compound public interface pointer that is no longer needed.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Interface Description
      static class  ICompound.CompoundKind
      Represents the kind of compounds recognised by doxygen.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      IDocRoot briefDescription()
      Returns a tree-structured representation of the brief description that is attached to this compound.
      IDocRoot detailedDescription()
      Returns a tree-structured representation of the detailed description that is attached to this compound.
      java.lang.String id()
      Returns the id of this compound.
      ICompound.CompoundKind kind()
      Returns the kind of compound.
      java.lang.String kindString()
      Returns a string representation of the compound kind.
      IMember memberById​(java.lang.String id)
      Returns an public interface to a member given its id.
      java.util.ListIterator<IMember> memberByName​(java.lang.String name)
      Returns a list of all members within the compound having a certain name.
      java.lang.String name()
      Returns the name of this compound
      java.util.ListIterator<IUserDefined> sections()
      Returns an iterator for the different member sections in this compound.
    • Method Detail

      • name

        java.lang.String name()
        Returns the name of this compound
      • id

        java.lang.String id()
        Returns the id of this compound. The id is a unique string representing a specific compound object.
      • kindString

        java.lang.String kindString()
        Returns a string representation of the compound kind.
        See Also:
        kind()
      • sections

        java.util.ListIterator<IUserDefined> sections()
        Returns an iterator for the different member sections in this compound.
      • briefDescription

        IDocRoot briefDescription()
        Returns a tree-structured representation of the brief description that is attached to this compound.
        Specified by:
        briefDescription in interface IDocumentedElement
      • detailedDescription

        IDocRoot detailedDescription()
        Returns a tree-structured representation of the detailed description that is attached to this compound.
        Specified by:
        detailedDescription in interface IDocumentedElement
      • memberById

        IMember memberById​(java.lang.String id)
        Returns an public interface to a member given its id.
        Parameters:
        id - The member id.
      • memberByName

        java.util.ListIterator<IMember> memberByName​(java.lang.String name)
        Returns a list of all members within the compound having a certain name. Member overloading is the reason why there can be more than one member.
        Parameters:
        name - The name of the member.