# Created: 22.03.2011 # Copyright (c) 2011-2018, Manfred Moitzi # License: MIT-License from typing import TYPE_CHECKING from ezdxf.lldxf.extendedtags import ExtendedTags from ezdxf.lldxf.attributes import DXFAttr, DXFAttributes, DefSubclass, XType from ezdxf.dxfentity import DXFEntity if TYPE_CHECKING: from ezdxf.eztypes import Auditor none_subclass = DefSubclass(None, { 'handle': DXFAttr(5), 'owner': DXFAttr(330), }) class DXFClass(DXFEntity): __slots__ = () DXFATTRIBS = DXFAttributes( DefSubclass(None, { 'name': DXFAttr(1), 'cpp_class_name': DXFAttr(2), 'app_name': DXFAttr(3), 'flags': DXFAttr(90), 'instance_count': DXFAttr(91, dxfversion='AC1018'), 'was_a_proxy': DXFAttr(280), 'is_an_entity': DXFAttr(281), }), ) class DXFObject(DXFEntity): __slots__ = () def audit(self, auditor: 'Auditor') -> None: auditor.check_pointer_target_exists(self, zero_pointer_valid=False) _PLACEHOLDER_TPL = """0 ACDBPLACEHOLDER 5 0 330 0 """ class ACDBPlaceHolder(DXFEntity): __slots__ = () TEMPLATE = ExtendedTags.from_text(_PLACEHOLDER_TPL) DXFATTRIBS = DXFAttributes(none_subclass, )