/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2025, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Open Design Alliance software pursuant to a license // agreement with Open Design Alliance. // Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// #include "OdaCommon.h" #include "ExPrintConsole.h" #include #include "daiModule.h" #include "ExValidationCommon.h" OdAnsiString getInstanceName(const OdDAIObjectId& id) { if (id) { OdAnsiString str; str.format("#%lu %s", (OdUInt64)id.getHandle(), id.getNested()->getInstanceType()->originalName().c_str()); return str; } return ""; } OdAnsiString translateObjectToText(OdRxObjectPtr obj) { OdDAI::ApplicationInstancePtr instance = OdDAI::ApplicationInstance::cast(obj); if (!instance.isNull()) { return getInstanceName(instance->id()); } ODA_ASSERT_ONCE(!"Object type is not implemented yet."); return ""; } OdAnsiString translateObjectsArrayToText(const OdRxObjectPtrArray& objects, OdAnsiString newLine) { OdAnsiString str; for (auto obj : objects) { str += translateObjectToText(obj); if (obj != objects.last()) str += newLine; } return str; } OdAnsiString translateObjectsArrayToText(const OdDAIObjectIds& objects, OdAnsiString newLine) { OdAnsiString str; for (auto obj : objects) { str += getInstanceName(obj); if (obj != objects.last()) str += newLine; } return str; } void ResultStatistics::addResult(const OdDAI::Logical result, const int callsCount) { switch (result) { case OdDAI::kLogical_F: errors += callsCount; break; case OdDAI::kLogical_T: sucsses += callsCount; break; case OdDAI::kLogical_U: unknown += callsCount; break; case OdDAI::kLogical_unset: unset += callsCount; break; default: break; } }