<?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: Get all wall composites in Archicad C++ API</title>
    <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/653268#M10162</link>
    <description>&lt;P&gt;Thanks to BerndSchwarzenbacher! Both solutions worked as I actually wanted! Thanks a lot.&lt;BR /&gt;Btw, I also wonder if I can actually extract the composite if I have actually selected an element. I was inspecting the memo of the selected element and the only information I found there about the composites were an integer values. I guess I have to pass them to API_Attribute attr {} variable as well. Hope my intuition is correct.&lt;BR /&gt;&lt;BR /&gt;Thanks anyway!&lt;/P&gt;</description>
    <pubDate>Wed, 26 Feb 2025 16:21:53 GMT</pubDate>
    <dc:creator>Emkave</dc:creator>
    <dc:date>2025-02-26T16:21:53Z</dc:date>
    <item>
      <title>Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/651857#M10122</link>
      <description>&lt;P&gt;Good day to everybody. I have a struggle with retrieving the whole data about wall composites that exist in an Archicad project.&lt;BR /&gt;Here is the empty Archicad project:&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="Emkave_0-1739533001391.png" style="width: 801px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/83234i2DB6E2384212BD5A/image-dimensions/801x574?v=v2" width="801" height="574" role="button" title="Emkave_0-1739533001391.png" alt="Emkave_0-1739533001391.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;and here is the list of wall composites:&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Emkave_1-1739533101190.png" style="width: 400px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/83235i145659C13DAA25A6/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Emkave_1-1739533101190.png" alt="Emkave_1-1739533101190.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I will be really glad if somebody tells me a way how to get all of the composites without passing an element or guid or any other data to the API. I just want to make a code that would return me the list of all existing wall composites.&lt;/P&gt;
&lt;P&gt;Thank you in advance!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier" color="grey"&gt;Operating system used: &lt;EM&gt;Windows 11&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 14:33:37 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/651857#M10122</guid>
      <dc:creator>Emkave</dc:creator>
      <dc:date>2025-02-18T14:33:37Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/651867#M10123</link>
      <description>&lt;P&gt;I have a schedule built into our template that does that. Nothing was needed outside of the Archicad file to create this.&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="JeffH_0-1739539754448.png" style="width: 801px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/83237iAF877526119C7638/image-dimensions/801x710?v=v2" width="801" height="710" role="button" title="JeffH_0-1739539754448.png" alt="JeffH_0-1739539754448.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 17 Feb 2025 23:11:07 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/651867#M10123</guid>
      <dc:creator>JeffH</dc:creator>
      <dc:date>2025-02-17T23:11:07Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652109#M10124</link>
      <description>&lt;P&gt;&lt;a href="https://community.graphisoft.com/t5/user/viewprofilepage/user-id/116612"&gt;@Emkave&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Do you want to do this with the API or using Schedules, without the use of API?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;a href="https://community.graphisoft.com/t5/user/viewprofilepage/user-id/16664"&gt;@JeffH&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Doesn't your method require at least one placed element for each Composite for them to be displayed in the Schedule?&lt;/P&gt;</description>
      <pubDate>Mon, 17 Feb 2025 23:30:16 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652109#M10124</guid>
      <dc:creator>Laszlo Nagy</dc:creator>
      <dc:date>2025-02-17T23:30:16Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652112#M10125</link>
      <description>&lt;P&gt;In the Attribute Manager (not the Attribute Palette), you can select all of the composites and save as a text file.&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="BarryKelly_0-1739835766437.png" style="width: 721px;"&gt;&lt;img src="https://community.graphisoft.com/t5/image/serverpage/image-id/83326i54166630A9471375/image-dimensions/721x514?v=v2" width="721" height="514" role="button" title="BarryKelly_0-1739835766437.png" alt="BarryKelly_0-1739835766437.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Barry.&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 00:07:44 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652112#M10125</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2025-02-18T00:07:44Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652152#M10126</link>
      <description>&lt;P&gt;Yes, I would like to make it work with the API. I know that such data is stored in Archicad somewhere, but I need that data to be extracted somehow via the API&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 07:57:01 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652152#M10126</guid>
      <dc:creator>Emkave</dc:creator>
      <dc:date>2025-02-18T07:57:01Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652170#M10127</link>
      <description>&lt;P&gt;&lt;a href="https://community.graphisoft.com/t5/user/viewprofilepage/user-id/116612"&gt;@Emkave&lt;/a&gt;&amp;nbsp;if you need help with the API, please ask your questions in the Developer Hub.&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 08:54:21 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652170#M10127</guid>
      <dc:creator>Noemi Balogh</dc:creator>
      <dc:date>2025-02-18T08:54:21Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652225#M10128</link>
      <description>&lt;P&gt;That is correct.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I use it moreso as an audit, to make sure walls don't get added into the project that don't follow the correct naming convention that is needed for our wall tags to work.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 13:40:09 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652225#M10128</guid>
      <dc:creator>JeffH</dc:creator>
      <dc:date>2025-02-18T13:40:09Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652235#M10129</link>
      <description>&lt;P&gt;OK, in this case, I have moved the topic to the Archicad API forum as that is more relevant.&lt;/P&gt;
&lt;P&gt;Hopefully, API gurus will read it there and will be able to help you.&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 14:33:02 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652235#M10129</guid>
      <dc:creator>Laszlo Nagy</dc:creator>
      <dc:date>2025-02-18T14:33:02Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652237#M10130</link>
      <description>&lt;P&gt;Apologies, I am just pretty new in this community and still need some time to adapt&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 14:34:25 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652237#M10130</guid>
      <dc:creator>Emkave</dc:creator>
      <dc:date>2025-02-18T14:34:25Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652238#M10131</link>
      <description>&lt;P&gt;No worries.&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 14:34:58 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652238#M10131</guid>
      <dc:creator>Laszlo Nagy</dc:creator>
      <dc:date>2025-02-18T14:34:58Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652239#M10132</link>
      <description>&lt;P&gt;Thank you very much for the correction of the topic's placement&lt;/P&gt;&lt;DIV class=""&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 18 Feb 2025 14:35:01 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652239#M10132</guid>
      <dc:creator>Emkave</dc:creator>
      <dc:date>2025-02-18T14:35:01Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652406#M10134</link>
      <description>&lt;P&gt;Hi Emkave,&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;This code prints the composite names to the session report (works for AC27+):&lt;/P&gt;
&lt;LI-CODE lang="cpp"&gt;ACAPI_Attribute_EnumerateAttributesByType (API_CompWallID,
    [](API_Attribute&amp;amp; compAttr)
{
    ACAPI_WriteReport (compAttr.header.name, false);
});&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For more details about handling attributes or how to do this for older AC versions you can check the "Attribute_Test" example project in the respective API DevKits.&lt;BR /&gt;&lt;BR /&gt;Or feel free to ask more for more details.&lt;BR /&gt;&lt;BR /&gt;Best,&lt;BR /&gt;Bernd&lt;/P&gt;</description>
      <pubDate>Wed, 19 Feb 2025 18:52:04 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652406#M10134</guid>
      <dc:creator>BerndSchwarzenbacher</dc:creator>
      <dc:date>2025-02-19T18:52:04Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652409#M10135</link>
      <description>&lt;P&gt;Hello. Thank you for the reply. Is there a function for archicads of versions 26 and below?&lt;/P&gt;</description>
      <pubDate>Wed, 19 Feb 2025 19:10:19 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652409#M10135</guid>
      <dc:creator>Emkave</dc:creator>
      <dc:date>2025-02-19T19:10:19Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652420#M10136</link>
      <description>&lt;P&gt;Something like this should work in &amp;lt;=AC26 (not tested):&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="cpp"&gt;API_AttrTypeID typeID = API_CompWallID;

API_AttributeIndex num = 0;
GSErrCode err = ACAPI_Attribute_GetNum (typeID, &amp;amp;num);
if (err != NoError) { return err; }

for (API_AttributeIndex id = 1; id &amp;lt;= num; ++id) {
  API_Attribute attr{};
  attr.header.typeID = typeID;
  attr.header.index = id;

  GS::UniString tmpUniString;
  attr.header.uniStringNamePtr = &amp;amp;tmpUniString;
  err = ACAPI_Attribute_Get (&amp;amp;attr);
  if (err == APIERR_DELETED || err == APIERR_BADINDEX) { continue; }
  if (err != NoError) { return err; }

  ACAPI_WriteReport (tmpUniString, false);
}&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 19 Feb 2025 21:26:01 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/652420#M10136</guid>
      <dc:creator>BerndSchwarzenbacher</dc:creator>
      <dc:date>2025-02-19T21:26:01Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/653268#M10162</link>
      <description>&lt;P&gt;Thanks to BerndSchwarzenbacher! Both solutions worked as I actually wanted! Thanks a lot.&lt;BR /&gt;Btw, I also wonder if I can actually extract the composite if I have actually selected an element. I was inspecting the memo of the selected element and the only information I found there about the composites were an integer values. I guess I have to pass them to API_Attribute attr {} variable as well. Hope my intuition is correct.&lt;BR /&gt;&lt;BR /&gt;Thanks anyway!&lt;/P&gt;</description>
      <pubDate>Wed, 26 Feb 2025 16:21:53 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/653268#M10162</guid>
      <dc:creator>Emkave</dc:creator>
      <dc:date>2025-02-26T16:21:53Z</dc:date>
    </item>
    <item>
      <title>Re: Get all wall composites</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/653269#M10163</link>
      <description>&lt;P&gt;Happy to help &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;&lt;BR /&gt;Your intuition is correct. An element only stores the attribute index of a component. So set the index in &lt;STRONG&gt;API_Attribute attr{}&lt;/STRONG&gt; and then use &lt;STRONG&gt;ACAPI_Attribute_Get&lt;/STRONG&gt;. Also be aware of &lt;STRONG&gt;ACAPI_Attribute_GetDef &lt;/STRONG&gt;&amp;amp;&lt;STRONG&gt; ACAPI_Attribute_GetDefExt&lt;/STRONG&gt; for more details of attributes.&lt;/P&gt;</description>
      <pubDate>Wed, 26 Feb 2025 16:26:49 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Get-all-wall-composites/m-p/653269#M10163</guid>
      <dc:creator>BerndSchwarzenbacher</dc:creator>
      <dc:date>2025-02-26T16:26:49Z</dc:date>
    </item>
  </channel>
</rss>

