Skip to content

Commit

Permalink
spec: promote LAYOUTPRINTCONFIG to unstable
Browse files Browse the repository at this point in the history
we do have coverage, and it looks complete
(just 6 padding bits)
  • Loading branch information
rurban committed Dec 31, 2023
1 parent ac87d36 commit 7ce3289
Show file tree
Hide file tree
Showing 10 changed files with 16 additions and 21 deletions.
4 changes: 2 additions & 2 deletions bindings/dwg.i
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,7 @@ EXPORT Dwg_Entity_XLINE** dwg_getall_XLINE (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_ARC_DIMENSION** dwg_getall_ARC_DIMENSION (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_HELIX** dwg_getall_HELIX (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_LARGE_RADIAL_DIMENSION** dwg_getall_LARGE_RADIAL_DIMENSION (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_LAYOUTPRINTCONFIG** dwg_getall_LAYOUTPRINTCONFIG (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_PLANESURFACE** dwg_getall_PLANESURFACE (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_POINTCLOUD** dwg_getall_POINTCLOUD (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_POINTCLOUDEX** dwg_getall_POINTCLOUDEX (Dwg_Object_Ref* hdr);
Expand All @@ -258,7 +259,6 @@ EXPORT Dwg_Entity_WIPEOUT** dwg_getall_WIPEOUT (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_FLIPGRIPENTITY** dwg_getall_FLIPGRIPENTITY (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_FLIPPARAMETERENTITY** dwg_getall_FLIPPARAMETERENTITY (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_GEOPOSITIONMARKER** dwg_getall_GEOPOSITIONMARKER (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_LAYOUTPRINTCONFIG** dwg_getall_LAYOUTPRINTCONFIG (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_LINEARGRIPENTITY** dwg_getall_LINEARGRIPENTITY (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_LINEARPARAMETERENTITY** dwg_getall_LINEARPARAMETERENTITY (Dwg_Object_Ref* hdr);
EXPORT Dwg_Entity_LOFTEDSURFACE** dwg_getall_LOFTEDSURFACE (Dwg_Object_Ref* hdr);
Expand Down Expand Up @@ -577,6 +577,7 @@ EXPORT Dwg_Entity_XLINE* dwg_object_to_XLINE (Dwg_Object* obj);
EXPORT Dwg_Entity_ARC_DIMENSION* dwg_object_to_ARC_DIMENSION (Dwg_Object* obj);
EXPORT Dwg_Entity_HELIX* dwg_object_to_HELIX (Dwg_Object* obj);
EXPORT Dwg_Entity_LARGE_RADIAL_DIMENSION* dwg_object_to_LARGE_RADIAL_DIMENSION (Dwg_Object* obj);
EXPORT Dwg_Entity_LAYOUTPRINTCONFIG* dwg_object_to_LAYOUTPRINTCONFIG (Dwg_Object* obj);
EXPORT Dwg_Entity_PLANESURFACE* dwg_object_to_PLANESURFACE (Dwg_Object* obj);
EXPORT Dwg_Entity_POINTCLOUD* dwg_object_to_POINTCLOUD (Dwg_Object* obj);
EXPORT Dwg_Entity_POINTCLOUDEX* dwg_object_to_POINTCLOUDEX (Dwg_Object* obj);
Expand All @@ -589,7 +590,6 @@ EXPORT Dwg_Entity_WIPEOUT* dwg_object_to_WIPEOUT (Dwg_Object* obj);
EXPORT Dwg_Entity_FLIPGRIPENTITY* dwg_object_to_FLIPGRIPENTITY (Dwg_Object* obj);
EXPORT Dwg_Entity_FLIPPARAMETERENTITY* dwg_object_to_FLIPPARAMETERENTITY (Dwg_Object* obj);
EXPORT Dwg_Entity_GEOPOSITIONMARKER* dwg_object_to_GEOPOSITIONMARKER (Dwg_Object* obj);
EXPORT Dwg_Entity_LAYOUTPRINTCONFIG* dwg_object_to_LAYOUTPRINTCONFIG (Dwg_Object* obj);
EXPORT Dwg_Entity_LINEARGRIPENTITY* dwg_object_to_LINEARGRIPENTITY (Dwg_Object* obj);
EXPORT Dwg_Entity_LINEARPARAMETERENTITY* dwg_object_to_LINEARPARAMETERENTITY (Dwg_Object* obj);
EXPORT Dwg_Entity_LOFTEDSURFACE* dwg_object_to_LOFTEDSURFACE (Dwg_Object* obj);
Expand Down
4 changes: 2 additions & 2 deletions include/dwg.h
Original file line number Diff line number Diff line change
Expand Up @@ -8565,6 +8565,7 @@ typedef struct _dwg_object_entity
Dwg_Entity_ARC_DIMENSION *ARC_DIMENSION;
Dwg_Entity_HELIX *HELIX;
Dwg_Entity_LARGE_RADIAL_DIMENSION *LARGE_RADIAL_DIMENSION;
Dwg_Entity_LAYOUTPRINTCONFIG *LAYOUTPRINTCONFIG;
Dwg_Entity_PLANESURFACE *PLANESURFACE;
Dwg_Entity_POINTCLOUD *POINTCLOUD;
Dwg_Entity_POINTCLOUDEX *POINTCLOUDEX;
Expand All @@ -8577,7 +8578,6 @@ typedef struct _dwg_object_entity
Dwg_Entity_FLIPGRIPENTITY *FLIPGRIPENTITY;
Dwg_Entity_FLIPPARAMETERENTITY *FLIPPARAMETERENTITY;
Dwg_Entity_GEOPOSITIONMARKER *GEOPOSITIONMARKER;
Dwg_Entity_LAYOUTPRINTCONFIG *LAYOUTPRINTCONFIG;
Dwg_Entity_LINEARGRIPENTITY *LINEARGRIPENTITY;
Dwg_Entity_LINEARPARAMETERENTITY *LINEARPARAMETERENTITY;
Dwg_Entity_LOFTEDSURFACE *LOFTEDSURFACE;
Expand Down Expand Up @@ -10132,6 +10132,7 @@ EXPORT int dwg_setup_DWFDEFINITION (Dwg_Object *obj);
EXPORT int dwg_setup_ARC_DIMENSION (Dwg_Object *obj);
EXPORT int dwg_setup_HELIX (Dwg_Object *obj);
EXPORT int dwg_setup_LARGE_RADIAL_DIMENSION (Dwg_Object *obj);
EXPORT int dwg_setup_LAYOUTPRINTCONFIG (Dwg_Object *obj);
EXPORT int dwg_setup_PLANESURFACE (Dwg_Object *obj);
EXPORT int dwg_setup_POINTCLOUD (Dwg_Object *obj);
EXPORT int dwg_setup_POINTCLOUDEX (Dwg_Object *obj);
Expand Down Expand Up @@ -10236,7 +10237,6 @@ EXPORT int dwg_setup_ASSOCARRAYRECTANGULARPARAMETERS (Dwg_Object *obj);
EXPORT int dwg_setup_FLIPGRIPENTITY (Dwg_Object *obj);
EXPORT int dwg_setup_FLIPPARAMETERENTITY (Dwg_Object *obj);
EXPORT int dwg_setup_GEOPOSITIONMARKER (Dwg_Object *obj);
EXPORT int dwg_setup_LAYOUTPRINTCONFIG (Dwg_Object *obj);
EXPORT int dwg_setup_LINEARGRIPENTITY (Dwg_Object *obj);
EXPORT int dwg_setup_LINEARPARAMETERENTITY (Dwg_Object *obj);
EXPORT int dwg_setup_LOFTEDSURFACE (Dwg_Object *obj);
Expand Down
4 changes: 2 additions & 2 deletions include/dwg_api.h
Original file line number Diff line number Diff line change
Expand Up @@ -1009,6 +1009,7 @@ extern "C"
dwg_get_OBJECT_DECL (ent_arc_dimension, ARC_DIMENSION);
dwg_get_OBJECT_DECL (ent_helix, HELIX);
dwg_get_OBJECT_DECL (ent_large_radial_dimension, LARGE_RADIAL_DIMENSION);
dwg_get_OBJECT_DECL (ent_layoutprintconfig, LAYOUTPRINTCONFIG);
dwg_get_OBJECT_DECL (ent_planesurface, PLANESURFACE);
dwg_get_OBJECT_DECL (ent_pointcloud, POINTCLOUD);
dwg_get_OBJECT_DECL (ent_pointcloudex, POINTCLOUDEX);
Expand All @@ -1021,7 +1022,6 @@ extern "C"
dwg_get_OBJECT_DECL (ent_flipgripentity, FLIPGRIPENTITY);
dwg_get_OBJECT_DECL (ent_flipparameterentity, FLIPPARAMETERENTITY);
dwg_get_OBJECT_DECL (ent_geopositionmarker, GEOPOSITIONMARKER);
dwg_get_OBJECT_DECL (ent_layoutprintconfig, LAYOUTPRINTCONFIG);
dwg_get_OBJECT_DECL (ent_lineargripentity, LINEARGRIPENTITY);
dwg_get_OBJECT_DECL (ent_linearparameterentity, LINEARPARAMETERENTITY);
dwg_get_OBJECT_DECL (ent_loftedsurface, LOFTEDSURFACE);
Expand Down Expand Up @@ -1735,6 +1735,7 @@ extern "C"
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (ARC_DIMENSION);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (HELIX);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (LARGE_RADIAL_DIMENSION);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (LAYOUTPRINTCONFIG);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (PLANESURFACE);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (POINTCLOUD);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (POINTCLOUDEX);
Expand All @@ -1747,7 +1748,6 @@ extern "C"
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (FLIPGRIPENTITY);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (FLIPPARAMETERENTITY);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (GEOPOSITIONMARKER);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (LAYOUTPRINTCONFIG);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (LINEARGRIPENTITY);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (LINEARPARAMETERENTITY);
CAST_DWG_OBJECT_TO_ENTITY_BYNAME_DECL (LOFTEDSURFACE);
Expand Down
2 changes: 1 addition & 1 deletion src/classes.inc
Original file line number Diff line number Diff line change
Expand Up @@ -271,6 +271,7 @@
UNSTABLE_CLASS (ACTION, HELIX) /* ent, looks very stable */
UNSTABLE_CLASS (ACTION, WIPEOUT) /* ent, stable but causes acad redraw to crash (GH #244) */
UNSTABLE_CLASS (ACTION, LARGE_RADIAL_DIMENSION) /* ent */
UNSTABLE_CLASS (ACTION, LAYOUTPRINTCONFIG) /* ent. CSD_APP, probably a mistake as ent */
UNSTABLE_CLASS (ACTION, LIGHTLIST)
UNSTABLE_CLASS (ACTION, MATERIAL) // encode fails ODA
UNSTABLE_CLASS (ACTION, MENTALRAYRENDERSETTINGS) // not exported by Teigha
Expand Down Expand Up @@ -367,7 +368,6 @@
DEBUGGING_CLASS (ACTION, MPOLYGON) // hatch-like ent
DEBUGGING_CLASS_CPP (ACTION, NAVISWORKSMODEL, AcDbNavisworksModel) /* ent,
dxfname COORDINATION_MODEL? */
DEBUGGING_CLASS (ACTION, LAYOUTPRINTCONFIG) /* ent. CSD_APP, probably a mistake as ent */
DEBUGGING_CLASS (ACTION, DIMASSOC)
DEBUGGING_CLASS_CPP (ACTION, TABLECONTENT, AcDbTableContent) // dxfname: "TABLE"
DEBUGGING_CLASS (ACTION, ACSH_EXTRUSION_CLASS)
Expand Down
6 changes: 2 additions & 4 deletions src/dwg.spec
Original file line number Diff line number Diff line change
Expand Up @@ -11114,17 +11114,15 @@ DWG_OBJECT (RENDERGLOBAL)
START_OBJECT_HANDLE_STREAM;
DWG_OBJECT_END

#if defined (DEBUG_CLASSES) || defined (IS_FREE)

DWG_ENTITY (LAYOUTPRINTCONFIG)
HANDLE_UNKNOWN_BITS;
SUBCLASS (CAcLayoutPrintConfig)
FIELD_BS (class_version, 0);
DEBUG_HERE_OBJ
FIELD_BS (flag, 93);
COMMON_ENTITY_HANDLE_DATA;
DWG_ENTITY_END

#if defined (DEBUG_CLASSES) || defined (IS_FREE)

// AutoCAD Mechanical
DWG_OBJECT (ACMESCOPE)
HANDLE_UNKNOWN_BITS;
Expand Down
7 changes: 3 additions & 4 deletions src/dwg_api.c
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,7 @@ dwg_get_OBJECT (ent_sectionobject, SECTIONOBJECT)
dwg_get_OBJECT (ent_arc_dimension, ARC_DIMENSION)
dwg_get_OBJECT (ent_helix, HELIX)
dwg_get_OBJECT (ent_large_radial_dimension, LARGE_RADIAL_DIMENSION)
dwg_get_OBJECT (ent_layoutprintconfig, LAYOUTPRINTCONFIG)
dwg_get_OBJECT (ent_planesurface, PLANESURFACE)
dwg_get_OBJECT (ent_pointcloud, POINTCLOUD)
dwg_get_OBJECT (ent_pointcloudex, POINTCLOUDEX)
Expand All @@ -236,7 +237,6 @@ dwg_get_OBJECT (ent_wipeout, WIPEOUT)
dwg_get_OBJECT (ent_flipgripentity, FLIPGRIPENTITY)
dwg_get_OBJECT (ent_flipparameterentity, FLIPPARAMETERENTITY)
dwg_get_OBJECT (ent_geopositionmarker, GEOPOSITIONMARKER)
dwg_get_OBJECT (ent_layoutprintconfig, LAYOUTPRINTCONFIG)
dwg_get_OBJECT (ent_lineargripentity, LINEARGRIPENTITY)
dwg_get_OBJECT (ent_linearparameterentity, LINEARPARAMETERENTITY)
dwg_get_OBJECT (ent_loftedsurface, LOFTEDSURFACE)
Expand Down Expand Up @@ -573,6 +573,7 @@ DWG_GETALL_ENTITY (XLINE)
DWG_GETALL_ENTITY (ARC_DIMENSION)
DWG_GETALL_ENTITY (HELIX)
DWG_GETALL_ENTITY (LARGE_RADIAL_DIMENSION)
DWG_GETALL_ENTITY (LAYOUTPRINTCONFIG)
DWG_GETALL_ENTITY (PLANESURFACE)
DWG_GETALL_ENTITY (POINTCLOUD)
DWG_GETALL_ENTITY (POINTCLOUDEX)
Expand All @@ -585,7 +586,6 @@ DWG_GETALL_ENTITY (EXTRUDEDSURFACE)
DWG_GETALL_ENTITY (FLIPGRIPENTITY)
DWG_GETALL_ENTITY (FLIPPARAMETERENTITY)
DWG_GETALL_ENTITY (GEOPOSITIONMARKER)
DWG_GETALL_ENTITY (LAYOUTPRINTCONFIG)
DWG_GETALL_ENTITY (LINEARGRIPENTITY)
DWG_GETALL_ENTITY (LINEARPARAMETERENTITY)
DWG_GETALL_ENTITY (LOFTEDSURFACE)
Expand Down Expand Up @@ -924,6 +924,7 @@ CAST_DWG_OBJECT_TO_ENTITY_BYNAME (SECTIONOBJECT)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (ARC_DIMENSION)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (HELIX)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (LARGE_RADIAL_DIMENSION)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (LAYOUTPRINTCONFIG)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (PLANESURFACE)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (POINTCLOUD)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (POINTCLOUDEX)
Expand All @@ -936,7 +937,6 @@ CAST_DWG_OBJECT_TO_ENTITY_BYNAME (WIPEOUT)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (FLIPGRIPENTITY)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (FLIPPARAMETERENTITY)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (GEOPOSITIONMARKER)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (LAYOUTPRINTCONFIG)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (LINEARGRIPENTITY)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (LINEARPARAMETERENTITY)
CAST_DWG_OBJECT_TO_ENTITY_BYNAME (LOFTEDSURFACE)
Expand Down Expand Up @@ -28171,7 +28171,6 @@ dwg_add_SPATIAL_INDEX (Dwg_Data *restrict dwg /* ... */)
}
}

// LAYOUTPRINTCONFIG
// LEADEROBJECTCONTEXTDATA
// LIGHT
// LIGHTLIST
Expand Down
2 changes: 1 addition & 1 deletion src/objects.c
Original file line number Diff line number Diff line change
Expand Up @@ -1152,7 +1152,7 @@ in_word_set (const char *str, size_t len)
#line 118 "src/objects.in"
{(int)(size_t)&((struct stringpool_t *)0)->stringpool_str371, "REGION", DWG_TYPE_REGION, 1, STABLE},
#line 86 "src/objects.in"
{(int)(size_t)&((struct stringpool_t *)0)->stringpool_str372, "LAYOUTPRINTCONFIG", DWG_TYPE_LAYOUTPRINTCONFIG, 1, DEBUGGING},
{(int)(size_t)&((struct stringpool_t *)0)->stringpool_str372, "LAYOUTPRINTCONFIG", DWG_TYPE_LAYOUTPRINTCONFIG, 1, UNSTABLE},
#line 201 "src/objects.in"
{(int)(size_t)&((struct stringpool_t *)0)->stringpool_str373, "ACDBASSOCOFFSETSURFACEACTIONBODY", DWG_TYPE_ASSOCOFFSETSURFACEACTIONBODY, 0, UNSTABLE},
#line 284 "src/objects.in"
Expand Down
2 changes: 1 addition & 1 deletion src/objects.in
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ GCC46_DIAG_IGNORE(-Wmissing-field-initializers)
"INSERT", "INSERT", DWG_TYPE_INSERT, 1, STABLE
"JUMP", "JUMP", DWG_TYPE_JUMP, 1, STABLE
"LARGE_RADIAL_DIMENSION", "LARGE_RADIAL_DIMENSION", DWG_TYPE_LARGE_RADIAL_DIMENSION, 1, UNSTABLE
"LAYOUTPRINTCONFIG", "LAYOUTPRINTCONFIG", DWG_TYPE_LAYOUTPRINTCONFIG, 1, DEBUGGING
"LAYOUTPRINTCONFIG", "LAYOUTPRINTCONFIG", DWG_TYPE_LAYOUTPRINTCONFIG, 1, UNSTABLE
"LEADER", "LEADER", DWG_TYPE_LEADER, 1, STABLE
"LIGHT", "LIGHT", DWG_TYPE_LIGHT, 1, STABLE
"LINE", "LINE", DWG_TYPE_LINE, 1, STABLE
Expand Down
2 changes: 1 addition & 1 deletion test/unit-testing/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,7 @@ testobjects = \
layer_index \
layerfilter \
layout \
layoutprintconfig \
leader \
light \
lightlist \
Expand Down Expand Up @@ -331,7 +332,6 @@ testdebug = \
geomapimage \
geopositionmarker \
helix \
layoutprintconfig \
loftedsurface \
mleaderobjectcontextdata \
motionpath \
Expand Down
4 changes: 1 addition & 3 deletions test/unit-testing/layoutprintconfig.c
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// TODO DEBUGGING
// Unstable
#define DWG_TYPE DWG_TYPE_LAYOUTPRINTCONFIG
#include "common.c"

Expand All @@ -9,10 +9,8 @@ api_process (dwg_object *obj)
BITCODE_BS class_version;
BITCODE_BS flag;

#ifdef DEBUG_CLASSES
dwg_ent_layoutprintconfig *_obj = dwg_object_to_LAYOUTPRINTCONFIG (obj);

CHK_ENTITY_TYPE (_obj, LAYOUTPRINTCONFIG, class_version, BS);
CHK_ENTITY_TYPE (_obj, LAYOUTPRINTCONFIG, flag, BS);
#endif
}

0 comments on commit 7ce3289

Please sign in to comment.