Handling ZIP archives and XML document files from an Add-On
Anonymous
Not applicable
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2009-03-01
04:25 PM
- last edited on
2023-08-03
05:21 PM
by
Doreena Deng
2009-03-01
04:25 PM
I know ArchiCAD uses dll-s/frameworks to handle ZIP archives and XML document files all over the place, the xerces-c framework seems to be used on both platforms for XML.
Instead of reinventing a wheel or accidentally using an other toolkit, does anybody now how to piggyback on these third party frameworks?
If not, what is the favorite choice for parsing XML files and Unzipping archives into temporary directories?
Thanks,
f
Instead of reinventing a wheel or accidentally using an other toolkit, does anybody now how to piggyback on these third party frameworks?
If not, what is the favorite choice for parsing XML files and Unzipping archives into temporary directories?
Thanks,
f
Labels:
- Labels:
-
Add-On (C++)
4 REPLIES 4
Anonymous
Not applicable
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2009-04-10 04:25 PM
2009-04-10
04:25 PM
There are open source libraries like gzip, minilib,xlib and tinyxml. When integrating them to the API source however the headers seem to conflict and it is hard to overcome. On the other hand the API support using GSXML, GSXUTILS, GSZIP DLLs (frameworks on the MAC), however the header files (and the know how) is not public.
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2009-04-10 06:40 PM
2009-04-10
06:40 PM
Ferenc wrote:I've linked to a variety of other SDKs for zipping, SOAP calls, and XML processing without problems. What conflicts are you seeing?
There are open source libraries like gzip, minilib,xlib and tinyxml. When integrating them to the API source however the headers seem to conflict and it is hard to overcome. On the other hand the API support using GSXML, GSXUTILS, GSZIP DLLs (frameworks on the MAC), however the header files (and the know how) is not public.
Ralph Wessel BArch
Central Innovation
Central Innovation
Anonymous
Not applicable
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2009-04-10 10:06 PM
2009-04-10
10:06 PM
Different on the mac and on windows. I haven't documented them too well, but without the extensive details it looks like using STL, Xlib, or Boost headers gets me into trouble, like basic string (BSTR) and others either redefined or assumed differently. Without drilling down into the packages it is really hard to pinpoint what went wrong because the error messages don't come from the place where you actually CAN fix anything. The problem that these packages (like Collada.org DAE, SketchUp SDK) assume that the host is either an AFX, or an ATL COM, or MFC application, which the ArchiCAD APX DLL (Bundle) is not.
I think eventually I'll need to create a wrapper DLL (Framework) and compile that with the SDKs/Libraries, and only expose a subset towards the APX tool so namespaces, defines, etc will be shielded.
What did you use for the ZIP functionality and the XML processing (if it is not trade secret)?
I think eventually I'll need to create a wrapper DLL (Framework) and compile that with the SDKs/Libraries, and only expose a subset towards the APX tool so namespaces, defines, etc will be shielded.
What did you use for the ZIP functionality and the XML processing (if it is not trade secret)?
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2009-04-11 01:14 PM
2009-04-11
01:14 PM
Ferenc wrote:I make extensive use of the STL and Boost (esp. BGL), but there are parts of the ArchiCAD API that can conflict with these headers. As a quick experiment, does your situation improve if you remove the following folder from the ArchiCAD API devkit: "Support/Modules/GSRoot/STL"?
Different on the mac and on windows. I haven't documented them too well, but without the extensive details it looks like using STL, Xlib, or Boost headers gets me into trouble, like basic string (BSTR) and others either redefined or assumed differently.
Ralph Wessel BArch
Central Innovation
Central Innovation