Next: , Previous: , Up: Sections   [Contents][Index]


5.3 CLASSES Section

The Classes Section contains the basic info for all dynamically loaded types for entities and objects. Its types start with 500, and are variable. An entity which has no class loaded is displayed as proxy.

LibreDWG contains support for many classes, but not all. See src/classes.inc and src/classes.c. We define a stability for each class, one of stable, unstable, debugging and unhandled.

Objects in stable classes are treated as the fixed-type objects with full support. Changes are treated as API breaking.

Objects in unstable classes are sometimes written to DXF or JSON, but not to DWG. Changes are not treated as API breaking. Usually such objects are converted to UNKNOWN_OBJ or UNKNOWN_ENT objects, and when written to DWG converted to PLACEHOLDER, DUMMY or POINT objects with EED pointing to the original class and content. Only when rewriting from-to the very same version with the full known unknown_bits blob (e.g. dwgrewrite or json) such classes can persist as such.

Objects in debugging classes are only handled with the developer configure --enable-debug flag, otherwise ignored. See unstable above.

Objects in undhandled classes are always ignored. There are no fields known, only its type.