10-19-2014, 11:15 AM
Yes, CORE does not require you to have the Illustrator SDK present, as it performs all necessary suite calls itself. This was one of the most important design goals of CORE; to start a new project, get one to compile for the latest release of Illustrator, and/or stop having to use preprocessor macros throughout your project to deal with separate versions of Illustrator, you simply download the latest version of CORE and get going. CORE handles all these differences internally and adds support for the latest version of Illustrator very close to the release date of Illustrator itself.
To support developers utilizing CORE and the Illustrator SDK in their project, we kept the declarations and definitions of suite globals internal to CORE, used an obfuscated global naming scheme, and do not distribute the Illustrator SDK alongside CORE. As such, you can't simply use e.g. the sAIPath global right out of the box, as CORE does not declare it for you. Similarly, CORE only acquires suites when they are needed, so you couldn't use our internal globals whenever you wanted.
So, to use the Illustrator SDK alongside CORE, you simply need to add the necessary version(s) of the Illustrator SDK to your project. This pretty much just involves you adding the Illustrator SDK header files search path to your project, creating some header that externs the suites you want to use, and create some *.c/*.cpp file to define the globals to a default value of NULL. Now you can acquire suites whenever you need to (startup, post-startup, etc.) No different really from creating a new project using the SDK way back before CORE existed.
And C++ is a superset of C, so the vast majority of C code is compilable with a C++ compiler. In fact, almost all modern C compilers are also C++ compilers. Your old C code is fine if you setup your project to compile against the Illustrator SDK, but CORE is mostly object-oriented so you will have to write some C++ code too if you want to use some CORE features.
To support developers utilizing CORE and the Illustrator SDK in their project, we kept the declarations and definitions of suite globals internal to CORE, used an obfuscated global naming scheme, and do not distribute the Illustrator SDK alongside CORE. As such, you can't simply use e.g. the sAIPath global right out of the box, as CORE does not declare it for you. Similarly, CORE only acquires suites when they are needed, so you couldn't use our internal globals whenever you wanted.
So, to use the Illustrator SDK alongside CORE, you simply need to add the necessary version(s) of the Illustrator SDK to your project. This pretty much just involves you adding the Illustrator SDK header files search path to your project, creating some header that externs the suites you want to use, and create some *.c/*.cpp file to define the globals to a default value of NULL. Now you can acquire suites whenever you need to (startup, post-startup, etc.) No different really from creating a new project using the SDK way back before CORE existed.
And C++ is a superset of C, so the vast majority of C code is compilable with a C++ compiler. In fact, almost all modern C compilers are also C++ compilers. Your old C code is fine if you setup your project to compile against the Illustrator SDK, but CORE is mostly object-oriented so you will have to write some C++ code too if you want to use some CORE features.