@@ -374,23 +374,24 @@ void ProjMgrRunDebug::CollectDebugTopology(const ContextItem& context, const vec
374374
375375 // datapatches
376376 for (const auto & [debug, _] : debugs) {
377- Collection<RteItem*> datapatches;
378- debug->GetChildrenByTag (" datapatch" , datapatches);
379- for (const auto & datapatch : datapatches) {
380- DatapatchType patch;
381- patch.address = datapatch->GetAttributeAsULL (" address" );
382- patch.value = datapatch->GetAttributeAsULL (" value" );
383- if (datapatch->HasAttribute (" mask" )) {
384- patch.mask = datapatch->GetAttributeAsULL (" mask" );
385- }
386- patch.type = datapatch->GetAttribute (" type" );
387- patch.info = datapatch->GetAttribute (" info" );
388- if (datapatch->HasAttribute (" __apid" )) {
389- datapatchById[datapatch->GetAttributeAsInt (" __apid" )].push_back (patch);
390- } else {
391- const auto & dp = datapatch->GetAttributeAsInt (" __dp" , defaultDp);
392- const auto & apIndex = datapatch->GetAttributeAsInt (" __ap" , debug->GetAttributeAsInt (" __ap" , 0 ));
393- datapatchByIndex[dp][apIndex].push_back (patch);
377+ const RteDevicePropertyGroup* properties = dynamic_cast <const RteDeviceDebug*>(debug);
378+ for (const auto & datapatch : properties->GetEffectiveContent ()) {
379+ if (datapatch->GetTag () == " datapatch" ) {
380+ DatapatchType patch;
381+ patch.address = datapatch->GetAttributeAsULL (" address" );
382+ patch.value = datapatch->GetAttributeAsULL (" value" );
383+ if (datapatch->HasAttribute (" mask" )) {
384+ patch.mask = datapatch->GetAttributeAsULL (" mask" );
385+ }
386+ patch.type = datapatch->GetAttribute (" type" );
387+ patch.info = datapatch->GetAttribute (" info" );
388+ if (datapatch->HasAttribute (" __apid" )) {
389+ datapatchById[datapatch->GetAttributeAsInt (" __apid" )].push_back (patch);
390+ } else {
391+ const auto & dp = datapatch->GetAttributeAsInt (" __dp" , defaultDp);
392+ const auto & apIndex = datapatch->GetAttributeAsInt (" __ap" , debug->GetAttributeAsInt (" __ap" , 0 ));
393+ datapatchByIndex[dp][apIndex].push_back (patch);
394+ }
394395 }
395396 }
396397 }
0 commit comments