FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcDbGraph.h
Go to the documentation of this file.
1#pragma once
2
3//
4// (C) Copyright 2005-2024 by Graebert GmbH.
5//
6// Permission to use, copy, modify, and distribute this software in
7// object code form for any purpose and without fee is hereby granted,
8// provided that the above copyright notice appears in all copies and
9// that both that copyright notice and the limited warranty and
10// restricted rights notice below appear in all supporting
11// documentation.
12//
13// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
14// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
15// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
16// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
17// UNINTERRUPTED OR ERROR FREE.
18
19#include "..\acad\Acad.h"
20
21template < typename Param1 > class AcArrayMemCopyReallocator;
22class AcDbGraphNode;
23class AcDbGraph_Impl;
24
26{
27 friend class AcDbGraph_Impl;
28public:
30 Acad::ErrorStatus addEdge( AcDbGraphNode *, AcDbGraphNode *);
31 Acad::ErrorStatus addNode( AcDbGraphNode *);
32 Acad::ErrorStatus breakCycleEdge( AcDbGraphNode *, AcDbGraphNode *);
33 Acad::ErrorStatus delNode( AcDbGraphNode *);
34 virtual ~AcDbGraph(void);
35 virtual int findCycles( AcDbGraphNode *);
36 void clearAll(unsigned char);
38 void reset(void);
40 int numNodes(void) const;
41 AcDbGraphNode* node(int index) const;
43 bool isEmpty() const;
44
45protected:
46 Acad::ErrorStatus clearAllCycles(void);
47
48protected:
49 AcDbGraph_Impl* m_pImpl;
50};
AcDbGraphNode * rootNode() const
void reset(void)
Acad::ErrorStatus addEdge(AcDbGraphNode *, AcDbGraphNode *)
bool isEmpty() const
void getOutgoing(AcDbVoidPtrArray &)
Acad::ErrorStatus delNode(AcDbGraphNode *)
AcDbGraph_Impl * m_pImpl
Definition AcDbGraph.h:49
void setNodeGrowthRate(int)
Acad::ErrorStatus breakCycleEdge(AcDbGraphNode *, AcDbGraphNode *)
Acad::ErrorStatus addNode(AcDbGraphNode *)
Acad::ErrorStatus clearAllCycles(void)
AcDbGraph(AcDbGraphNode *=NULL)
void clearAll(unsigned char)
virtual int findCycles(AcDbGraphNode *)
AcDbGraphNode * node(int index) const
virtual ~AcDbGraph(void)
int numNodes(void) const