<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to specify code flow on ADK version? in Archicad C++ API</title>
    <link>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590882#M9232</link>
    <description>&lt;P&gt;Thanks for both the answer guys, this is what I was searching for.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;#if !defined (ServerMainVers_2700)
    // code for AC26 and older versions
#endif&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The code between the pre-compiled headers is working&amp;nbsp;&lt;STRONG&gt;until AC26&lt;/STRONG&gt;, and not only for AC26.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Have a nice day!&lt;/P&gt;</description>
    <pubDate>Mon, 04 Mar 2024 09:10:49 GMT</pubDate>
    <dc:creator>pagliu96</dc:creator>
    <dc:date>2024-03-04T09:10:49Z</dc:date>
    <item>
      <title>How to specify code flow on ADK version?</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590132#M9219</link>
      <description>&lt;P&gt;Hello everybody guys, my question is the following:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I saw that in the `ACAPIinc.h` file there are many constants for the software version like `ServerMainVers_xxx`, now I', doing the migration to AC27 and I saw that there are some old code blocks that are signaling through intellisense a compiler error.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Basically they can't find the new functions definition wrapped by the `MigrationHeader.h`, but they actually shouldn't search for it since that piece of code should be for AC25.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="cpp"&gt;#include "PluginIpcCommandTask.h"

#if defined(ServerMainVers_2500)
#include "Utilities.h"

#include &amp;lt;spdlog/spdlog.h&amp;gt;

#include "GSRoot/StringConversion.hpp"
#include "HTTP/Client/ClientConnection.hpp"
#include "HTTP/Client/Request.hpp"
#include "HTTP/Client/Response.hpp"
#include "MemoryOBinaryChannel.hpp"
#include "JSON/JSON/JDOMParser.hpp"
#include "JSON/JSON/JDOMWriter.hpp"
#include "JSON/JSON/Value.hpp"

namespace knauf::archicad::plannersuite {

PluginIpcCommandTask::PluginIpcCommandTask(CommandId commandId, const std::string&amp;amp; commandParams)
    : commandId(commandId), commandParams(commandParams) {
    GSErrCode err = ::ACAPI_Goodies(APIAny_GetHttpConnectionPortID, &amp;amp;connectionPort);
    if (err != NoError) {
        throw;
    }
}

... doing other stuff

#endif&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Somehow I'm not using correctly the constants, since they are all enabled (this piece of code shouldn't be considered since I'm working on AC27 ADK Solution).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks in advance &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;P.S.: I know that by placing the migration header I would solve the intellisense error, but actually I don't really solve the underlying issue.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="pagliu96_0-1709047377256.png" style="width: 800px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/54042iA0B4C3ACD8E75A5D/image-dimensions/800x466?v=v2" width="800" height="466" role="button" title="pagliu96_0-1709047377256.png" alt="pagliu96_0-1709047377256.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Sep 2024 12:58:54 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590132#M9219</guid>
      <dc:creator>pagliu96</dc:creator>
      <dc:date>2024-09-16T12:58:54Z</dc:date>
    </item>
    <item>
      <title>Re: How to specify code flow on ADK version?</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590322#M9223</link>
      <description>&lt;P&gt;im sorry im kinda having troubles to understand the question. waht is a adk? do you mean SKD?&lt;/P&gt;
&lt;P&gt;i can only comment on this:&amp;nbsp; you state that you do a migration to AC27:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"&lt;SPAN&gt;I', doing the migration to AC27"&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;but you are using the ACAPI_Goodies API Call, that does not exist anymore.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;A href="https://graphisoft.github.io/archicad-api-devkit/modules.html" target="_blank" rel="noopener"&gt;https://graphisoft.github.io/archicad-api-devkit/modules.html&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;i think your call is now in the AC27 API named "ACAPI_Command_GetHttpConnectionPort()"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;i didnt knew that there is a migration header. haha. cool stuff.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;check out the goodies example. there is no API Call left that has the name goodies in it.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="JoelBuehler_0-1709139170255.png" style="width: 999px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/54102iDA359ADE1AEE07D9/image-size/large?v=v2&amp;amp;px=999" role="button" title="JoelBuehler_0-1709139170255.png" alt="JoelBuehler_0-1709139170255.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;as a comment: i really like that they renamed those functions. "goodie" was as meaningless as a namingconvetion can be.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;and i like that knauf is working on a plugin &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 29 Feb 2024 02:03:31 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590322#M9223</guid>
      <dc:creator>Joel Buehler</dc:creator>
      <dc:date>2024-02-29T02:03:31Z</dc:date>
    </item>
    <item>
      <title>Re: How to specify code flow on ADK version?</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590366#M9225</link>
      <description>&lt;P&gt;If you build for AC27 then&amp;nbsp;ServerMainVers_2700 is defined but all previous versions are also defined (why?).&lt;/P&gt;&lt;P&gt;So, instead of writing code like this&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;#if defined(ServerMainVers_2500)
   // code for AC25
#endif&lt;/LI-CODE&gt;&lt;P&gt;you can do this&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;#if !defined (ServerMainVers_2700)
    // code for AC26 and older versions
#endif&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 28 Feb 2024 20:58:43 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590366#M9225</guid>
      <dc:creator>kolioi</dc:creator>
      <dc:date>2024-02-28T20:58:43Z</dc:date>
    </item>
    <item>
      <title>Re: How to specify code flow on ADK version?</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590882#M9232</link>
      <description>&lt;P&gt;Thanks for both the answer guys, this is what I was searching for.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;#if !defined (ServerMainVers_2700)
    // code for AC26 and older versions
#endif&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The code between the pre-compiled headers is working&amp;nbsp;&lt;STRONG&gt;until AC26&lt;/STRONG&gt;, and not only for AC26.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Have a nice day!&lt;/P&gt;</description>
      <pubDate>Mon, 04 Mar 2024 09:10:49 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/How-to-specify-code-flow-on-ADK-version/m-p/590882#M9232</guid>
      <dc:creator>pagliu96</dc:creator>
      <dc:date>2024-03-04T09:10:49Z</dc:date>
    </item>
  </channel>
</rss>

