Update ooo320-m1
[ooovba.git] / goodies / source / filter.vcl / idxf / dxfblkrd.hxx
blob8f8021e27fb1c5cf80d544aeef6af47410cd3649
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: dxfblkrd.hxx,v $
10 * $Revision: 1.3 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef _DXFBLKRD_HXX
32 #define _DXFBLKRD_HXX
34 #include <dxfentrd.hxx>
36 //----------------------------------------------------------------------------
37 //---------------- Ein Block (= Menge von Entities) --------------------------
38 //----------------------------------------------------------------------------
40 class DXFBlock : public DXFEntities {
42 public:
44 DXFBlock * pSucc;
45 // Zeiger auf naechsten Block in der Liste DXFBlocks::pFirst
47 // Eigenschaften des Blocks, durch Gruppencodes kommentiert:
48 char sName[DXF_MAX_STRING_LEN+1]; // 2
49 char sAlsoName[DXF_MAX_STRING_LEN+1]; // 3
50 long nFlags; // 70
51 DXFVector aBasePoint; // 10,20,30
52 char sXRef[DXF_MAX_STRING_LEN+1]; // 1
54 DXFBlock();
55 ~DXFBlock();
57 void Read(DXFGroupReader & rDGR);
58 // Liest den Block (einschliesslich der Entities) per rGDR
59 // aus einer DXF-Datei bis zu einem ENDBLK, ENDSEC oder EOF.
63 //----------------------------------------------------------------------------
64 //---------------- Eine Menge von Bloecken -----------------------------------
65 //----------------------------------------------------------------------------
67 class DXFBlocks {
69 public:
71 DXFBlock * pFirst;
72 // Liste der Bloecke, READ ONLY!
74 DXFBlocks();
75 ~DXFBlocks();
77 void Read(DXFGroupReader & rDGR);
78 // Liesst alle Bloecke per rDGR bis zu einem ENDSEC oder EOF.
80 DXFBlock * Search(const char * sName) const;
81 // Sucht einen Block mit dem Namen, liefert NULL bei Misserfolg.
83 void Clear();
84 // Loescht alle Bloecke;
88 #endif