/*
Copyright (c) 2024 PTC Inc. and/or Its Subsidiary Companies. All Rights Reserved.
*/
/*--------------------------------------------------------------------*\
Pro/TOOLKIT includes
\*--------------------------------------------------------------------*/
#include <ProToolkit.h>
#include <ProObjects.h>
#include <ProMdl.h>
/*--------------------------------------------------------------------*\
Application includes
\*--------------------------------------------------------------------*/
#include "TestError.h"
#include "UtilString.h"
/*====================================================================*\
FUNCTION : TestQcrName()
PURPOSE : Generate a name for an output QCR file.
\*====================================================================*/
char *ProTestQcrName(
ProMdl *model, /* Input - model */
char filext[], /* Input - file extension */
char filename[]) /* Output - file name */
{
ProError status;
char model_name[30], model_type[10];
char *ProUtilModelnameGet(ProMdl*,char*,char*);
/*--------------------------------------------------------------------*\
Get the current model
\*--------------------------------------------------------------------*/
if(model == NULL)
{
status = ProMdlCurrentGet(model);
/* No error check so this code can be used out of mode */
TEST_CALL_REPORT("ProMdlCurrentGet()", "ProTestQcrName()",
status, status != PRO_TK_NO_ERROR);
}
/*--------------------------------------------------------------------*\
If there is still no model (so no current mode),
use the name "nomodel".
\*--------------------------------------------------------------------*/
if(model == NULL)
ProUtilstrcpy(filename,"nomodel");
else
{
/*--------------------------------------------------------------------*\
Use the name of the current model as the file name.
\*--------------------------------------------------------------------*/
ProUtilModelnameGet(model, model_name, model_type);
ProUtilstrcpy(filename,(const char *)model_name);
}
/*--------------------------------------------------------------------*\
Add the file extension.
\*--------------------------------------------------------------------*/
ProUtilstrcat(filename,(const char *)filext);
return(filename);
}