Stream: brlcad

Topic: SDAI


view this post on Zulip starseeker (Nov 17 2020 at 14:38):

@Sean I think this is the portion of the ISO standards you are thinking about that defines C and C++ APIs for the SDAI? https://en.wikipedia.org/wiki/ISO_10303-22

view this post on Zulip starseeker (Nov 17 2020 at 14:46):

I don't know if we have part 23 and part 24 available...

view this post on Zulip starseeker (Nov 17 2020 at 14:46):

(The latter is the C api)

view this post on Zulip starseeker (Nov 17 2020 at 15:30):

I hadn't notice this before - helpful as to context: https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication939.pdf

view this post on Zulip Sean (Nov 17 2020 at 19:05):

My recollection is that the reference was in the conformance APs (which was something high AP number like the 500 or 700 series), but yeah -- it should be something in AP 21-24 that govern.

I'll have to check my files. I'm pretty sure I have 21-24 as they were the original request.

view this post on Zulip Sean (Nov 17 2020 at 19:05):

it was 21-24, 203, 210, and 214 iirc

view this post on Zulip Sean (Nov 17 2020 at 19:06):

step application handbook was also useful iirc

view this post on Zulip starseeker (Nov 30 2020 at 18:11):

I looked at part 24 - the only header it calls out explicitly, near as I can tell, is sdai.h - not sure if there are implicitly required headers.

view this post on Zulip starseeker (Dec 01 2020 at 04:10):

I'm hitting an error I'm not sure how to address. The C++ generated by the latest stepcode is tripping the following warning:

In file included from /home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/SdaiCONFIG_CONTROL_DESIGN_unity_types.cc:34:
/home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/type/SdaiCurve_on_surface.cc: In member function ‘void SdaiCurve_on_surface::master_representation_(SdaiPreferred_surface_curve_representation_var)’:
/home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/type/SdaiCurve_on_surface.cc:395:72: error: implicitly-declared ‘constexpr SdaiPreferred_surface_curve_representation_var::SdaiPreferred_surface_curve_representation_var(const SdaiPreferred_surface_curve_representation_var&)’ is deprecated [-Werror=deprecated-copy]
  395 |     {  ((SdaiSurface_curve_ptr) _app_inst) ->master_representation_( x );
      |                                                                        ^
In file included from /home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/SdaiCONFIG_CONTROL_DESIGN.h:19,
                 from /home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/schema.h:42,
                 from /home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/SdaiCONFIG_CONTROL_DESIGN_unity_types.cc:14:
/home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/type/SdaiPreferred_surface_curve_representation_var.h:25:57: note: because ‘SdaiPreferred_surface_curve_representation_var’ has user-provided ‘SdaiPreferred_surface_curve_representation_var& SdaiPreferred_surface_curve_representation_var::operator=(const SdaiPreferred_surface_curve_representation_var&)’
   25 |         SdaiPreferred_surface_curve_representation_var& operator= (const SdaiPreferred_surface_curve_representation_var& e)
      |                                                         ^~~~~~~~
In file included from /home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/SdaiCONFIG_CONTROL_DESIGN.h:149,
                 from /home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/schema.h:42,
                 from /home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/SdaiCONFIG_CONTROL_DESIGN_unity_types.cc:14:
/home/user/extbuild/build/src/conv/step/step-g/CONFIG_CONTROL_DESIGN_stepg/entity/SdaiSurface_curve.h:33:91: note:   initializing argument 1 of ‘void SdaiSurface_curve::master_representation_(SdaiPreferred_surface_curve_representation_var)’
   33 |         void master_representation_( const SdaiPreferred_surface_curve_representation_var x );
      |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^

After a depressing amount of digging I'm guessing I need another constructor in the code being generated near exp2cxx/classes_type.c:191 but I'm not sure exactly what it should look like...

view this post on Zulip starseeker (Dec 01 2020 at 04:11):

If I'm forced to I know how to suppress the Werror=deprecated-copy warning, but I'd rather fix the generated code if it can be managed...

view this post on Zulip Sean (Dec 01 2020 at 11:54):

It's saying because the class defined operator=, it really should define a copy constructor too . I seem to recall fixing at least some of those in our code, so you might want to check our history and/or code to see if there's a copy constructor.

view this post on Zulip starseeker (Dec 01 2020 at 14:26):

Ah, OK - thanks. Fingers crossed... I think that just allowed me to build a working step-g with the upstream stepcode...


Last updated: Oct 09 2024 at 00:44 UTC