[CONNECT Update 12 C] 'native C' migration from V8i

Hello,

I am on a migration project from V8i (native C) to CONNECT.
Different messages found on different forums are not clear for me...
The existing project is composed of 50000 lines of code - native C.
My goal is to minimise the changes to complete the migration.
==> The main question is "are native C projets still supported with CONNECT edition ?"

It seems that the migrate tool is *just* a string remapping from old V8i/C to CONNECT/C++.
For example, the constant 'UNIT_ANGLE_Radians' is remapped by 'StandardUnit::AngleRadians'
Surely this kind of syntax cannot be compiled in C file (but in a C++ file).
How can I use this tool if I want to stay in native C ?

It seems that the provided makefiles are not working with .C extension files.
The following message is displayed when the source file is a .C one : "This file is for C++ compilands only"
Is there a way to use those makefiles (with a define or someting) or are there specific makefiles available ?
 
On the other hand MicroStationCONNECTSDK\include\Mstn\MdlApi contains the needed .H (and .FDF) files with the 'C' functions prototypes.
For example 'mdlScan_initialize()' defined in msscan.fdf found in V8i SDK and CONNECT SDK.
So to me it must be a way keep using those old 'native C' API... No ?

Thanks a lot, Pascal.

Parents
  • Good evening

    Thank you very much for the full and fast answers.

    First I don't doubt it is a good idea to follow the evolution imposed by the connect ecosystem (C++ and so on).
    Unfortunately rewriting with new API and new language means understand what the code does and then rewrite (and optionaly optimize) it with C++.
    My knowledge is much higher in C programming than in CAD :-)
    So if the migration consists in mechanical substitutions it's fine for me.

    Concerning the MicroStationCONNECT_MigrationWorkshop.pptx
    May be want I to read and understand only what would please me, but page 91, I can read that 'MDL C API (native)' is a supported platform (also page 42).
    OK it's the third choice but if it is still working, it's fine for me ;-). 

    I want to be 100% sure rewriting is C++ this is the only way to migrate.
    If so, the planning and the needed resources to complete this project won't certainly be the same !!

    Thanks again, Pascal

  • Hi ,

    Please note that Jan, Volker and Jon's input on this thread to this point are certainly all relevant, helpful and spot on to help set perspectives accordingly.

    Granted MicroStation CONNECT is certainly one of the most highly updated versions we have released to date; prior significant updates including: MicroStation V8 and MicroStation/J releases.  There are certainly a lot of new product features, workflows, customization and programming options and capabilities to learn and assess and almost a necessary/required first step for any user, administrator or developer; before trying to migrate and re-build a customization without such considerations.  Maybe not the best analogy but another way to think of migration in general (I certainly think this often related to migrating items): Am I building a different (inferior) version of an Existing or already Improved Wheel, or is a Wheel even necessary or even Fit (in) anymore (with a given new product workflows, UI, etc.)?

    MicroStation CONNECT does provide many new and improved APIs (and target programming languages and supported environments) to consider and I recommend all developers having customizations take a bit of time to review some current information available in the order presented to ensure a proper and productive path migrating starting here:

    Developers and Programming > Migrating to CONNECT

    Lastly, although ideally we would like far fewer (user, admin and developer) steps needed to advance to CONNECT; on the development side, we do envision a very long, active and productive 64-bit product incremental development release cycle. An incremental release cycle primarily offering stability and productivity improvements and not likely to have further (future) significant major development release impacts impacts migrating to: MicroStation CONNECT, MicroStation V8, or MicroStation/J editions.

    I hope the above information helps and as you have further questions please do feel free to Search and Ask questions on this forum and it's very helpful community.

    HTH,
    Bob



Reply
  • Hi ,

    Please note that Jan, Volker and Jon's input on this thread to this point are certainly all relevant, helpful and spot on to help set perspectives accordingly.

    Granted MicroStation CONNECT is certainly one of the most highly updated versions we have released to date; prior significant updates including: MicroStation V8 and MicroStation/J releases.  There are certainly a lot of new product features, workflows, customization and programming options and capabilities to learn and assess and almost a necessary/required first step for any user, administrator or developer; before trying to migrate and re-build a customization without such considerations.  Maybe not the best analogy but another way to think of migration in general (I certainly think this often related to migrating items): Am I building a different (inferior) version of an Existing or already Improved Wheel, or is a Wheel even necessary or even Fit (in) anymore (with a given new product workflows, UI, etc.)?

    MicroStation CONNECT does provide many new and improved APIs (and target programming languages and supported environments) to consider and I recommend all developers having customizations take a bit of time to review some current information available in the order presented to ensure a proper and productive path migrating starting here:

    Developers and Programming > Migrating to CONNECT

    Lastly, although ideally we would like far fewer (user, admin and developer) steps needed to advance to CONNECT; on the development side, we do envision a very long, active and productive 64-bit product incremental development release cycle. An incremental release cycle primarily offering stability and productivity improvements and not likely to have further (future) significant major development release impacts impacts migrating to: MicroStation CONNECT, MicroStation V8, or MicroStation/J editions.

    I hope the above information helps and as you have further questions please do feel free to Search and Ask questions on this forum and it's very helpful community.

    HTH,
    Bob



Children
No Data