/usr/include/oce/XCAFDoc_GraphNode.hxx is in liboce-ocaf-dev 0.17.2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 | // This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to
// this header file considered to be the "object code" form of the original source.
#ifndef _XCAFDoc_GraphNode_HeaderFile
#define _XCAFDoc_GraphNode_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_XCAFDoc_GraphNode.hxx>
#include <XCAFDoc_GraphNodeSequence.hxx>
#include <Standard_GUID.hxx>
#include <TDF_Attribute.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_Integer.hxx>
#include <Handle_TDF_Attribute.hxx>
#include <Handle_TDF_RelocationTable.hxx>
#include <Handle_TDF_DataSet.hxx>
#include <Standard_OStream.hxx>
class TDF_Label;
class Standard_GUID;
class TDF_Attribute;
class TDF_RelocationTable;
class TDF_DataSet;
//! This attribute allow user multirelation tree of labels.
//! This GraphNode is experimental Graph that not control looping and redundance.
//! Attribute containg sequence of father's and child's labels.
//! Provide create and work with Graph in XCAFDocument.
class XCAFDoc_GraphNode : public TDF_Attribute
{
public:
//! class methods working on the node
//! ===================================
//! Shortcut to search a Graph node attribute with default
//! GraphID. Returns true if found.
Standard_EXPORT static Standard_Boolean Find (const TDF_Label& L, Handle(XCAFDoc_GraphNode)& G) ;
//! Finds or Creates a GraphNode attribute on the label <L>
//! with the default Graph ID, returned by the method
//! <GetDefaultGraphID>. Returns the created/found GraphNode
//! attribute.
Standard_EXPORT static Handle(XCAFDoc_GraphNode) Set (const TDF_Label& L) ;
//! Finds or Creates a GraphNode attribute on the label
//! <L>, with an explicit tree ID. <ExplicitGraphID> is
//! the ID returned by <TDF_Attribute::ID> method.
//! Returns the found/created GraphNode attribute.
Standard_EXPORT static Handle(XCAFDoc_GraphNode) Set (const TDF_Label& L, const Standard_GUID& ExplicitGraphID) ;
//! returns a default Graph ID. this ID is used by the
//! <Set> method without explicit tree ID.
//! Instance methods:
//! ================
Standard_EXPORT static const Standard_GUID& GetDefaultGraphID() ;
Standard_EXPORT XCAFDoc_GraphNode();
Standard_EXPORT void SetGraphID (const Standard_GUID& explicitID) ;
//! Set GraphNode <F> as father of me and returns index of <F>
//! in Sequence that containing Fathers GraphNodes.
//! return index of <F> from GraphNodeSequnece
Standard_EXPORT Standard_Integer SetFather (const Handle(XCAFDoc_GraphNode)& F) ;
//! Set GraphNode <Ch> as child of me and returns index of <Ch>
//! in Sequence that containing Children GraphNodes.
//! return index of <Ch> from GraphNodeSequnece
Standard_EXPORT Standard_Integer SetChild (const Handle(XCAFDoc_GraphNode)& Ch) ;
//! Remove <F> from Fathers GraphNodeSequence.
//! and remove link between father and child.
Standard_EXPORT void UnSetFather (const Handle(XCAFDoc_GraphNode)& F) ;
//! Remove Father GraphNode by index from Fathers GraphNodeSequence.
//! and remove link between father and child.
Standard_EXPORT void UnSetFather (const Standard_Integer Findex) ;
//! Remove <Ch> from GraphNodeSequence.
//! and remove link between father and child.
Standard_EXPORT void UnSetChild (const Handle(XCAFDoc_GraphNode)& Ch) ;
//! Remove Child GraphNode by index from Children GraphNodeSequence.
//! and remove link between father and child.
Standard_EXPORT void UnSetChild (const Standard_Integer Chindex) ;
//! Return GraphNode by index from GraphNodeSequence.
Standard_EXPORT Handle(XCAFDoc_GraphNode) GetFather (const Standard_Integer Findex) const;
//! Return GraphNode by index from GraphNodeSequence.
Standard_EXPORT Handle(XCAFDoc_GraphNode) GetChild (const Standard_Integer Chindex) const;
//! Return index of <F>, or zero if there is no such Graphnode.
Standard_EXPORT Standard_Integer FatherIndex (const Handle(XCAFDoc_GraphNode)& F) const;
//! Return index of <Ch>, or zero if there is no such Graphnode.
Standard_EXPORT Standard_Integer ChildIndex (const Handle(XCAFDoc_GraphNode)& Ch) const;
//! returns TRUE if <me> is father of <Ch>.
Standard_EXPORT Standard_Boolean IsFather (const Handle(XCAFDoc_GraphNode)& Ch) const;
//! returns TRUE if <me> is child of <F>.
Standard_EXPORT Standard_Boolean IsChild (const Handle(XCAFDoc_GraphNode)& F) const;
//! return Number of Fathers GraphNodes.
Standard_EXPORT Standard_Integer NbFathers() const;
//! return Number of Childrens GraphNodes.
//! Implementation of Attribute methods:
//! ===================================
Standard_EXPORT Standard_Integer NbChildren() const;
//! Returns the Graph ID (default or explicit one depending
//! onthe Set method used).
Standard_EXPORT const Standard_GUID& ID() const;
Standard_EXPORT virtual void Restore (const Handle(TDF_Attribute)& with) ;
Standard_EXPORT virtual void Paste (const Handle(TDF_Attribute)& into, const Handle(TDF_RelocationTable)& RT) const;
Standard_EXPORT virtual Handle(TDF_Attribute) NewEmpty() const;
Standard_EXPORT virtual void References (const Handle(TDF_DataSet)& aDataSet) const;
Standard_EXPORT virtual Standard_OStream& Dump (Standard_OStream& anOS) const;
Standard_EXPORT virtual void BeforeForget() ;
DEFINE_STANDARD_RTTI(XCAFDoc_GraphNode)
protected:
private:
//! remove link between father and child.
Standard_EXPORT void UnSetFatherlink (const Handle(XCAFDoc_GraphNode)& F) ;
//! remove link between father and child.
Standard_EXPORT void UnSetChildlink (const Handle(XCAFDoc_GraphNode)& C) ;
XCAFDoc_GraphNodeSequence myFathers;
XCAFDoc_GraphNodeSequence myChildren;
Standard_GUID myGraphID;
};
#endif // _XCAFDoc_GraphNode_HeaderFile
|