Add function to find next part of complex entity by name or short name.
Add missing short names.
Test cases for issue CR26715
typeshor->SetItem ("ADDRSS",1);
typeshor->SetItem ("ABSR",2);
typeshor->SetItem ("ADVFC",3);
+ typeshor->SetItem ("ANCROC",4);
+ typeshor->SetItem ("ANFLAR",5);
+ typeshor->SetItem ("AFAO",6);
+ typeshor->SetItem ("ANNOCC",7);
+ typeshor->SetItem ("ANSBOC",8);
+ typeshor->SetItem ("ANNSYM",9);
+ typeshor->SetItem ("ANSYOC",10);
+ typeshor->SetItem ("ANNTXT",11);
+ typeshor->SetItem ("ANTXOC",12);
//203 typeshor->SetItem ("ALPRRL",ALTERNATE_PRODUCT_RELATIONSHIP);
typeshor->SetItem ("APPCNT",13);
typeshor->SetItem ("APCNEL",14);
typeshor->SetItem ("APPRLT",19);
typeshor->SetItem ("APPRL",20);
typeshor->SetItem ("APPSTT",21);
+ typeshor->SetItem ("ARINST",22);
//203 typeshor->SetItem ("AMWU",AREA_MEASURE_WITH_UNIT);
//203 typeshor->SetItem ("ARUNT",AREA_UNIT);
typeshor->SetItem ("ASCMUS",379);
typeshor->SetItem ("A2PL3D",37);
typeshor->SetItem ("BZRCRV",43);
typeshor->SetItem ("BZRSRF",44);
+ typeshor->SetItem ("BLNRSL",46);
typeshor->SetItem ("BNDCR",47);
typeshor->SetItem ("BNDCRV",48);
typeshor->SetItem ("BNDSRF",49);
typeshor->SetItem ("BSCWK",39);
typeshor->SetItem ("BSPSR",40);
typeshor->SetItem ("BSSWK",41);
+ typeshor->SetItem ("BXDMN",50);
+ typeshor->SetItem ("BXHLSP",51);
typeshor->SetItem ("CLNDT",53);
+ typeshor->SetItem ("CMRIMG",54);
+ typeshor->SetItem ("CMRMDL",55);
+ typeshor->SetItem ("CMMDD3",57);
+ typeshor->SetItem ("CMRUSG",58);
typeshor->SetItem ("CRTPNT",59);
typeshor->SetItem ("CRTROP",60);
//203 typeshor->SetItem ("CTO2",CARTESIAN_TRANSFORMATION_OPERATOR_2D);
//203 typeshor->SetItem ("CHNRQS",CHANGE_REQUEST);
typeshor->SetItem ("CLSSHL",63);
+ typeshor->SetItem ("CLRRGB",65);
+ typeshor->SetItem ("CLRSPC",66);
typeshor->SetItem ("CMPCRV",67);
typeshor->SetItem ("CCOS",68);
typeshor->SetItem ("CMCRSG",69);
//203 typeshor->SetItem ("CNFEFF",CONFIGURATION_EFFECTIVITY);
//203 typeshor->SetItem ("CNFITM",CONFIGURATION_ITEM);
+ typeshor->SetItem ("CMPTXT",70);
+ typeshor->SetItem ("CTWAC",71);
+ typeshor->SetItem ("CTWBB",72);
+ typeshor->SetItem ("CTWE",73);
typeshor->SetItem ("CNCSRF",75);
//203 typeshor->SetItem ("CNEDST",CONNECTED_EDGE_SET);
typeshor->SetItem ("CNFCST",76);
+ typeshor->SetItem ("CNDPIN",77);
+ typeshor->SetItem ("CDORSI",78);
typeshor->SetItem ("CDSR",391);
//203 typeshor->SetItem ("CNDPUN",CONTEXT_DEPENDENT_UNIT);
//203 typeshor->SetItem ("CNTRCT",CONTRACT);
//203 typeshor->SetItem ("CNTTYP",CONTRACT_TYPE);
typeshor->SetItem ("CNBSUN",79);
typeshor->SetItem ("CUTO",80);
+ typeshor->SetItem ("CSSHRP",82);
+ typeshor->SetItem ("CSGSLD",83);
typeshor->SetItem ("CRBNSR",85);
typeshor->SetItem ("CRVRPL",86);
+ typeshor->SetItem ("CRVSTY",87);
+ typeshor->SetItem ("CRSTFN",88);
+ typeshor->SetItem ("CSFP",89);
typeshor->SetItem ("CYLSRF",90);
//203 typeshor->SetItem ("DTDEFF",DATED_EFFECTIVITY);
typeshor->SetItem ("DTANTM",92);
typeshor->SetItem ("DATA",93);
+ typeshor->SetItem ("DTASS",94);
+ typeshor->SetItem ("DTRL",95);
typeshor->SetItem ("DTTMRL",96);
+ typeshor->SetItem ("DFNSYM",97);
typeshor->SetItem ("DFNRPR",98);
typeshor->SetItem ("DGNPCR",99);
+ typeshor->SetItem ("DGTRSR",100);
+ typeshor->SetItem ("DSRPIT",101);
+ typeshor->SetItem ("DMNCRV",102);
+ typeshor->SetItem ("DMCRTR",103);
typeshor->SetItem ("DSGCNT",340);
//203 typeshor->SetItem ("DMFR",DESIGN_MAKE_FROM_RELATIONSHIP);
typeshor->SetItem ("DMNEXP",104);
//203 typeshor->SetItem ("DRCACT",DIRECTED_ACTION);
typeshor->SetItem ("DRCTN",105);
+ typeshor->SetItem ("DRANOC",106);
+ typeshor->SetItem ("DRGCLL",107);
+ typeshor->SetItem ("DPDC",108);
+ typeshor->SetItem ("DPDCF",109);
+ typeshor->SetItem ("DRSBRP",110);
+ typeshor->SetItem ("DRSYRP",111);
+ typeshor->SetItem ("DTLWD",112);
+ typeshor->SetItem ("DRWDFN",113);
+ typeshor->SetItem ("DRWRVS",114);
typeshor->SetItem ("DCMNT",367);
//203 typeshor->SetItem ("DCMRFR",DOCUMENT_REFERENCE);
typeshor->SetItem ("DCMRLT",369);
typeshor->SetItem ("ELMSRF",118);
typeshor->SetItem ("ELLPS",119);
typeshor->SetItem ("EVDGPC",120);
+ typeshor->SetItem ("EXTSRC",121);
+ typeshor->SetItem ("EDCF",122);
+ typeshor->SetItem ("EDHS",123);
+ typeshor->SetItem ("EXDFIT",124);
+ typeshor->SetItem ("EXDFSY",125);
+ typeshor->SetItem ("EDTF",126);
+ typeshor->SetItem ("EDTS",127);
+ typeshor->SetItem ("EXARSL",128);
//203 typeshor->SetItem ("EXCACT",EXECUTED_ACTION);
- typeshor->SetItem ("FCTBR",134);
- typeshor->SetItem ("FBSR",135);
typeshor->SetItem ("FCBND",131);
typeshor->SetItem ("FCOTBN",132);
typeshor->SetItem ("FCSRF",133);
+ typeshor->SetItem ("FCTBR",134);
+ typeshor->SetItem ("FBSR",135);
+ typeshor->SetItem ("FLARST",136);
+ typeshor->SetItem ("FASC",137);
+ typeshor->SetItem ("FASH",138);
+ typeshor->SetItem ("FASTSW",139);
+ typeshor->SetItem ("FAST",140);
typeshor->SetItem ("FNDFTR",141);
typeshor->SetItem ("GBSSR",146);
typeshor->SetItem ("GBWSR",147);
typeshor->SetItem ("GMTST",145);
typeshor->SetItem ("GC",148);
typeshor->SetItem ("GUAC",149);
+ typeshor->SetItem ("GRPASS",151);
+ typeshor->SetItem ("GRPRLT",152);
+ typeshor->SetItem ("HLSPSL",153);
typeshor->SetItem ("HYPRBL",154);
typeshor->SetItem ("INTCRV",155);
+ typeshor->SetItem ("INVSBL",156);
typeshor->SetItem ("ITDFTR",354);
typeshor->SetItem ("LMWU",157);
typeshor->SetItem ("LNGUNT",158);
typeshor->SetItem ("MNSLBR",162);
typeshor->SetItem ("MSSR",163);
typeshor->SetItem ("MPPITM",164);
+ typeshor->SetItem ("MDGPA",166);
+ typeshor->SetItem ("MDGPR",167);
//203 typeshor->SetItem ("MMWU",MASS_MEASURE_WITH_UNIT);
//203 typeshor->SetItem ("MSSUNT",MASS_UNIT);
typeshor->SetItem ("MSWTUN",165);
//203 typeshor->SetItem ("OFCR2D",OFFSET_CURVE_2D);
typeshor->SetItem ("OFCR3D",171);
typeshor->SetItem ("OFFSRF",172);
+ typeshor->SetItem ("ODRF",173);
typeshor->SetItem ("OPNSHL",174);
typeshor->SetItem ("ORDDT",175);
typeshor->SetItem ("ORGNZT",176);
+ typeshor->SetItem ("ORGASS",177);
+ typeshor->SetItem ("ORGRL",178);
typeshor->SetItem ("ORGADD",179);
//203 typeshor->SetItem ("ORGPRJ",ORGANIZATIONAL_PROJECT);
//203 typeshor->SetItem ("ORGRLT",ORGANIZATION_RELATIONSHIP);
typeshor->SetItem ("OROPSH",183);
typeshor->SetItem ("ORNPTH",184);
typeshor->SetItem ("OTBNCR",185);
+ typeshor->SetItem ("ORSI",186);
typeshor->SetItem ("PRBL",187);
typeshor->SetItem ("PRRPCN",188);
- typeshor->SetItem ("PRSADD",195);
typeshor->SetItem ("PRANOR",192);
typeshor->SetItem ("PAOA",193);
typeshor->SetItem ("PAOR",194);
+ typeshor->SetItem ("PRSADD",195);
typeshor->SetItem ("PLCMNT",196);
+ typeshor->SetItem ("PLNBX",197);
+ typeshor->SetItem ("PLNEXT",198);
typeshor->SetItem ("PAMWU",200);
typeshor->SetItem ("PLANUN",201);
typeshor->SetItem ("PNONCR",203);
typeshor->SetItem ("PNONSR",204);
typeshor->SetItem ("PNTRPL",205);
- typeshor->SetItem ("PLYLN",208);
+ typeshor->SetItem ("PNTSTY",206);
typeshor->SetItem ("PLYLP",207);
+ typeshor->SetItem ("PLYLN",208);
+ typeshor->SetItem ("PRDFCL",209);
+ typeshor->SetItem ("PDCF",210);
+ typeshor->SetItem ("PRDFIT",211);
+ typeshor->SetItem ("PRDFSY",212);
+ typeshor->SetItem ("PDTF",213);
+ typeshor->SetItem ("PRSAR",214);
+ typeshor->SetItem ("PRLYAS",215);
+ typeshor->SetItem ("PRSRPR",216);
+ typeshor->SetItem ("PRSST",217);
+ typeshor->SetItem ("PRSSZ",218);
+ typeshor->SetItem ("PRSTAS",219);
+ typeshor->SetItem ("PSBC",220);
+ typeshor->SetItem ("PRSVW",221);
+ typeshor->SetItem ("PRSITM",222);
typeshor->SetItem ("PRDCT",223);
typeshor->SetItem ("PRDCTG",224);
//203 typeshor->SetItem ("PRCTRL",PRODUCT_CATEGORY_RELATIONSHIP);
typeshor->SetItem ("QACU",382);
typeshor->SetItem ("QSUNCR",236);
typeshor->SetItem ("QSUNSR",237);
+ typeshor->SetItem ("RMWU",238);
typeshor->SetItem ("RBSC",239);
typeshor->SetItem ("RBSS",240);
typeshor->SetItem ("RCCMSR",241);
typeshor->SetItem ("RCTRSR",242);
+ typeshor->SetItem ("RPITGR",243);
typeshor->SetItem ("RCCS",244);
typeshor->SetItem ("RPRSNT",245);
typeshor->SetItem ("RPRCNT",246);
typeshor->SetItem ("RPRITM",247);
typeshor->SetItem ("RPRMP",248);
typeshor->SetItem ("RPRRLT",249);
+ typeshor->SetItem ("RVARSL",250);
+ typeshor->SetItem ("RGANWD",251);
+ typeshor->SetItem ("RGCRCN",252);
+ typeshor->SetItem ("RGCRCY",253);
typeshor->SetItem ("RRWT",388);
typeshor->SetItem ("SMCRV",254);
typeshor->SetItem ("SCRCLS",255);
typeshor->SetItem ("SAMWU",265);
typeshor->SetItem ("SLANUN",336);
typeshor->SetItem ("SLDMDL",266);
+ typeshor->SetItem ("SLDRPL",267);
typeshor->SetItem ("SHUO",383);
typeshor->SetItem ("SPHSRF",269);
+ typeshor->SetItem ("STYITM",270);
//203 typeshor->SetItem ("STRRQS",START_REQUEST);
//203 typeshor->SetItem ("STRWRK",START_WORK);
typeshor->SetItem ("SPPRRL",385);
typeshor->SetItem ("SROFRV",274);
typeshor->SetItem ("SRFPTC",275);
typeshor->SetItem ("SRFRPL",276);
+ typeshor->SetItem ("SRSDST",277);
+ typeshor->SetItem ("SRSTBN",278);
+ typeshor->SetItem ("SSCG",279);
+ typeshor->SetItem ("SSFA",280);
+ typeshor->SetItem ("SSPL",281);
+ typeshor->SetItem ("SSSC",282);
+ typeshor->SetItem ("SRSTSL",283);
+ typeshor->SetItem ("SRSTUS",284);
+ typeshor->SetItem ("SWARSL",285);
typeshor->SetItem ("SWPSRF",286);
+ typeshor->SetItem ("SYMCLR",287);
+ typeshor->SetItem ("SYMRPR",288);
+ typeshor->SetItem ("SYRPMP",289);
+ typeshor->SetItem ("SYMSTY",290);
+ typeshor->SetItem ("SYMTRG",291);
+ typeshor->SetItem ("TRMSYM",294);
+ typeshor->SetItem ("TXTLTR",295);
+ typeshor->SetItem ("TLWAC",296);
+ typeshor->SetItem ("TLWBB",297);
+ typeshor->SetItem ("TLWD",298);
+ typeshor->SetItem ("TLWE",299);
+ typeshor->SetItem ("TXTSTY",300);
+ typeshor->SetItem ("TSFDF",301);
+ typeshor->SetItem ("TSWBC",302);
+ typeshor->SetItem ("TSWM",303);
typeshor->SetItem ("TPRPIT",304);
typeshor->SetItem ("TRDSRF",305);
typeshor->SetItem ("TRMCRV",308);
+ typeshor->SetItem ("TDRF",309);
typeshor->SetItem ("UMWU",310);
typeshor->SetItem ("UNFCRV",311);
typeshor->SetItem ("UNFSRF",312);
//203 typeshor->SetItem ("VRTSHL",VERTEX_SHELL);
//203 typeshor->SetItem ("VMWU",VOLUME_MEASURE_WITH_UNIT);
//203 typeshor->SetItem ("VLMUNT",VOLUME_UNIT);
+ typeshor->SetItem ("VWVLM",317);
typeshor->SetItem ("WOYADD",318);
+ typeshor->SetItem ("TMWU",341);
+ typeshor->SetItem ("RTUNT",342);
+ typeshor->SetItem ("TMUNT",343);
+ typeshor->SetItem ("CI3WS",350);
+ typeshor->SetItem ("CTO2",351);
+ typeshor->SetItem ("DRVUNT",352);
+ typeshor->SetItem ("DRUNEL",353);
+ typeshor->SetItem ("PRITRP",355);
+ typeshor->SetItem ("MFUO",378);
//203 typeshor->SetItem ("WRSHL",WIRE_SHELL);
+ typeshor->SetItem ("MTRDSG",390);
+ typeshor->SetItem ("ADATA",392);
+ typeshor->SetItem ("APDTAS",393);
+ typeshor->SetItem ("APGRAS",395);
+ typeshor->SetItem ("APORAS",396);
+ typeshor->SetItem ("APAOA",397);
+ typeshor->SetItem ("APPRIT",398);
+ typeshor->SetItem ("ASCA",399);
+ typeshor->SetItem ("APDCRF",400);
+ typeshor->SetItem ("DCMFL",401);
+ typeshor->SetItem ("CHROBJ",402);
+ typeshor->SetItem ("EXFCSL",403);
+ typeshor->SetItem ("RVFCSL",404);
+ typeshor->SetItem ("SWFCSL",405);
// Added by ABV 08.09.99 for CAX TRJ 2 (validation properties)
typeshor->SetItem ("MSRPIT",406);
typeshor->SetItem ("VRACRQ",438);
typeshor->SetItem ("PRCTRL",439);
typeshor->SetItem ("ACRQSL",440);
-// typeshor->SetItem ("DM??",441);
-
+ typeshor->SetItem ("DRGMDL",441);
+ typeshor->SetItem ("ANGLCT",442);
+ typeshor->SetItem ("ANGSZ",443);
+ typeshor->SetItem ("DMCHRP",444);
+ typeshor->SetItem ("DMNLCT",445);
+ typeshor->SetItem ("DLWP",446);
+ typeshor->SetItem ("DMNSZ",447);
+ typeshor->SetItem ("DSWP",448);
+ typeshor->SetItem ("SHDMRP",449);
+ typeshor->SetItem ("DCRPTY",450);
+ typeshor->SetItem ("OBJRL",451);
+ typeshor->SetItem ("RLASS",452);
+ typeshor->SetItem ("IDNRL",453);
+ typeshor->SetItem ("IDNASS",454);
+ typeshor->SetItem ("EXIDAS",455);
+ typeshor->SetItem ("EFFASS",456);
+ typeshor->SetItem ("NMASS",457);
+ typeshor->SetItem ("GNRPRP",458);
+ typeshor->SetItem ("EDGP",461);
+ typeshor->SetItem ("AEIA",462);
+ typeshor->SetItem ("CMSHAS",470);
+ typeshor->SetItem ("DRSHAS",471);
+ typeshor->SetItem ("EXTNSN",472);
+ typeshor->SetItem ("DRDMLC",473);
+ typeshor->SetItem ("LMANFT",474);
+ typeshor->SetItem ("TLRVL",475);
+ typeshor->SetItem ("MSRQLF",476);
+ typeshor->SetItem ("PLMNTL",477);
+ typeshor->SetItem ("PRCQLF",478);
+ typeshor->SetItem ("TYPQLF",479);
+ typeshor->SetItem ("QLRPIT", 480);
+ typeshor->SetItem ("CMRPIT", 482);
+ typeshor->SetItem ("CMRPIT", 483);
+ typeshor->SetItem ("CMS0", 485);
+ typeshor->SetItem ("CNEDST", 486);
+ typeshor->SetItem ("EBWM", 488);
+ typeshor->SetItem ("EBWSR", 489);
+ typeshor->SetItem ("NMSSR", 491);
+ typeshor->SetItem ("ORNSRF", 492);
+ typeshor->SetItem ("SBFC", 493);
+ typeshor->SetItem ("SBDG", 494);
+ typeshor->SetItem ("CFSS", 496);
+ typeshor->SetItem ("MSSUNT", 501);
+ typeshor->SetItem ("THTMUN", 502);
+ typeshor->SetItem ("DTENV", 565);
+ typeshor->SetItem ("MTPRRP", 566);
+ typeshor->SetItem ("PRDFR", 567);
+ typeshor->SetItem ("MTRPRP", 569);
+ typeshor->SetItem ("PDFR", 573);
+ typeshor->SetItem ("DCP1", 600);
+ typeshor->SetItem ("DCPREQ", 601);
// typeshor->SetItem (AngularLocation);
// typeshor->SetItem (AngularSize);
// typeshor->SetItem (DimensionalCharacteristicRepresentation);
// typeshor->SetItem (DimensionalSize);
// typeshor->SetItem (DimensionalSizeWithPath);
// typeshor->SetItem (ShapeDimensionRepresentation);
-
+ typeshor->SetItem ("CYLTLR", 609);
+ typeshor->SetItem ("SRWP", 610);
+ typeshor->SetItem ("ANGTLR", 611);
+ typeshor->SetItem ("CNCTLR", 612);
+ typeshor->SetItem ("CRRNTL", 613);
+ typeshor->SetItem ("CXLTLR", 614);
+ typeshor->SetItem ("FLTTLR", 615);
+ typeshor->SetItem ("LNP0", 616);
+ typeshor->SetItem ("PRLTLR", 617);
+ typeshor->SetItem ("PRPTLR", 618);
+ typeshor->SetItem ("PSTTLR", 619);
+ typeshor->SetItem ("RNDTLR", 620);
+ typeshor->SetItem ("STRTLR", 621);
+ typeshor->SetItem ("SRPRTL", 622);
+ typeshor->SetItem ("SYMTLR", 623);
+ typeshor->SetItem ("TTRNTL", 624);
+ typeshor->SetItem ("GMTTLR", 625);
+ typeshor->SetItem ("GMTLRL", 626);
+ typeshor->SetItem ("GTWDR", 627);
+ typeshor->SetItem ("MDGMTL", 628);
+ typeshor->SetItem ("DTMFTR", 630);
+ typeshor->SetItem ("DTMRFR", 631);
+ typeshor->SetItem ("CMMDTM", 632);
+ typeshor->SetItem ("DTMTRG", 633);
+ typeshor->SetItem ("PDT0", 634);
typeshor->SetItem ("MMWU",651);
+ typeshor->SetItem ("CNOFSY",661);
+ typeshor->SetItem ("GMTALG",662);
+ typeshor->SetItem ("PRPT",663);
+ typeshor->SetItem ("TNGNT",664);
+ typeshor->SetItem ("PRLOFF",665);
+ typeshor->SetItem ("GISU",666);
+ typeshor->SetItem ("IDATT",667);
+ typeshor->SetItem ("IIRU",668);
+ typeshor->SetItem ("GTWDU",674);
+ typeshor->SetItem ("PRZNDF",679);
+ typeshor->SetItem ("RNZNDF",680);
+ typeshor->SetItem ("RNZNOR",681);
+ typeshor->SetItem ("TLRZN",682);
+ typeshor->SetItem ("TLZNDF",683);
+ typeshor->SetItem ("TLZNFR",684);
+ typeshor->SetItem ("INRPIT",700);
+ typeshor->SetItem ("VLRPIT",701);
}
// sln 09.10.2001. BUC61003. Correction of looking for items of complex entity in case of them do not saticfy to alphabetical order
// CONVERSION_BASED_UNIT
Standard_Integer num = 0;//num0;
- data->NamedForComplex("CONVERSION_BASED_UNIT CNBSUN",num0,num,ach);
+ data->NamedForComplex("CONVERSION_BASED_UNIT", "CNBSUN",num0,num,ach);
if (!data->CheckNbParams(num,2,ach,"conversion_based_unit")) return;
Handle(TCollection_HAsciiString) aName;
data->ReadString (num,1,"name",ach,aName);
// NAMED_UNIT
//num = 0; //gka TRJ9 c2-id-214.stp
- data->NamedForComplex("NAMED_UNIT NMDUNT",num0,num,ach);
+ data->NamedForComplex("NAMED_UNIT", "NMDUNT",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"named_unit")) return;
Handle(StepBasic_DimensionalExponents) aDimensions;
data->ReadEntity(num, 1,"dimensions", ach, STANDARD_TYPE(StepBasic_DimensionalExponents), aDimensions);
// PLANE_ANGLE_UNIT
//num = 0; //gka
- data->NamedForComplex("PLANE_ANGLE_UNIT PLANUN",num0,num,ach);
+ data->NamedForComplex("PLANE_ANGLE_UNIT", "PLANUN",num0,num,ach);
if (!data->CheckNbParams(num,0,ach,"plane_angle_unit")) return;
ent->Init(aDimensions,aName,aConversionFactor);
Handle(StepBasic_DimensionalExponents) aDimensions;
data->ReadEntity(num, 1,"dimensions", ach, STANDARD_TYPE(StepBasic_DimensionalExponents), aDimensions);
- data->NamedForComplex("VOLUME_UNIT",num0,num,ach);
+ data->NamedForComplex("VOLUME_UNIT","VLMUNT",num0,num,ach);
if (!data->CheckNbParams(num,0,ach,"volume_unit")) return;
ent->Init(aDimensions,aName,aConversionFactor);
const Handle(StepBasic_SiUnitAndAreaUnit)& ent) const
{
Standard_Integer num = 0;
- data->NamedForComplex("AREA_UNIT",num0,num,ach);
+ data->NamedForComplex("AREA_UNIT","ARUNT",num0,num,ach);
if (!data->CheckNbParams(num,0,ach,"area_unit")) return;
- data->NamedForComplex("NAMED_UNIT NMDUNT",num0,num,ach);
+ data->NamedForComplex("NAMED_UNIT", "NMDUNT",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"named_unit")) return;
Handle(StepBasic_DimensionalExponents) aDimensions;
data->ReadEntity(num, 1,"dimensions", ach, STANDARD_TYPE(StepBasic_DimensionalExponents), aDimensions);
- data->NamedForComplex("SI_UNIT SUNT",num0,num,ach);
+ data->NamedForComplex("SI_UNIT", "SUNT",num0,num,ach);
if (!data->CheckNbParams(num,2,ach,"si_unit")) return;
RWStepBasic_RWSiUnit reader;
const Handle(StepBasic_SiUnitAndLengthUnit)& ent) const
{
Standard_Integer num = 0; // num0;
- Standard_Boolean sorted = data->NamedForComplex("LENGTH_UNIT LNGUNT",num0,num,ach);
+ Standard_Boolean sorted = data->NamedForComplex("LENGTH_UNIT", "LNGUNT",num0,num,ach);
// --- Instance of plex componant LengthUnit ---
if (!data->CheckNbParams(num,0,ach,"length_unit")) return;
if (!sorted) num = 0; //pdn unsorted case
- sorted &=data->NamedForComplex("NAMED_UNIT NMDUNT",num0,num,ach);
+ sorted &=data->NamedForComplex("NAMED_UNIT", "NMDUNT",num0,num,ach);
// --- Instance of common supertype NamedUnit ---
if (!data->CheckNbParams(num,1,ach,"named_unit")) return;
data->CheckDerived(num,1,"dimensions",ach,Standard_False);
if (!sorted) num = 0; //pdn unsorted case
- data->NamedForComplex("SI_UNIT SUNT",num0,num,ach);
+ data->NamedForComplex("SI_UNIT", "SUNT",num0,num,ach);
// --- Instance of plex componant SiUnit ---
if (!data->CheckNbParams(num,2,ach,"si_unit")) return;
const Handle(StepBasic_SiUnitAndMassUnit)& ent) const
{
Standard_Integer num = 0; // num0;
- Standard_Boolean sorted = data->NamedForComplex("MASS_UNIT",num0,num,ach);
+ Standard_Boolean sorted = data->NamedForComplex("MASS_UNIT","MSSUNT",num0,num,ach);
// --- Instance of plex componant LengthUnit ---
if (!data->CheckNbParams(num,0,ach,"mass_unit")) return;
if (!sorted) num = 0; //pdn unsorted case
- sorted &=data->NamedForComplex("NAMED_UNIT NMDUNT",num0,num,ach);
+ sorted &=data->NamedForComplex("NAMED_UNIT", "NMDUNT",num0,num,ach);
// --- Instance of common supertype NamedUnit ---
if (!data->CheckNbParams(num,1,ach,"named_unit")) return;
data->CheckDerived(num,1,"dimensions",ach,Standard_False);
if (!sorted) num = 0; //pdn unsorted case
- data->NamedForComplex("SI_UNIT SUNT",num0,num,ach);
+ data->NamedForComplex("SI_UNIT", "SUNT",num0,num,ach);
// --- Instance of plex componant SiUnit ---
if (!data->CheckNbParams(num,2,ach,"si_unit")) return;
const Handle(StepBasic_SiUnitAndVolumeUnit)& ent) const
{
Standard_Integer num = 0;
- data->NamedForComplex("NAMED_UNIT NMDUNT",num0,num,ach);
+ data->NamedForComplex("NAMED_UNIT", "NMDUNT",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"named_unit")) return;
Handle(StepBasic_DimensionalExponents) aDimensions;
data->ReadEntity(num, 1,"dimensions", ach, STANDARD_TYPE(StepBasic_DimensionalExponents), aDimensions);
- data->NamedForComplex("SI_UNIT SUNT",num0,num,ach);
+ data->NamedForComplex("SI_UNIT", "SUNT",num0,num,ach);
if (!data->CheckNbParams(num,2,ach,"si_unit")) return;
RWStepBasic_RWSiUnit reader;
return;
}
- data->NamedForComplex("VOLUME_UNIT",num0,num,ach);
+ data->NamedForComplex("VOLUME_UNIT","VLMUNT",num0,num,ach);
if (!data->CheckNbParams(num,0,ach,"volume_unit")) return;
ent->Init(hasAprefix,aPrefix,aName);
const Handle(StepDimTol_GeoTolAndGeoTolWthDatRef)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("GEOMETRIC_TOLERANCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE","GMTTLR",num0,num,ach);
if (!data->CheckNbParams(num,4,ach,"geometric_tolerance")) return;
// Own fields of GeometricTolerance
Handle(TCollection_HAsciiString) aName;
StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
data->ReadEntity (num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
- data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE","GTWDR",num0,num,ach);
// Own fields of GeometricToleranceWithDatumReference
Handle(StepDimTol_HArray1OfDatumSystemOrReference) aDatumSystem;
Standard_Integer sub5 = 0;
const Handle(StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("GEOMETRIC_TOLERANCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE","GMTTLR",num0,num,ach);
if (!data->CheckNbParams(num,4,ach,"geometric_tolerance")) return;
// Own fields of GeometricTolerance
Handle(TCollection_HAsciiString) aName;
StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
data->ReadEntity (num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
- data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE","GTWDR",num0,num,ach);
// Own fields of GeometricToleranceWithDatumReference
Handle(StepDimTol_HArray1OfDatumSystemOrReference) aDatumSystem;
Standard_Integer sub5 = 0;
const Handle(StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("GEOMETRIC_TOLERANCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE","GMTTLR",num0,num,ach);
if (!data->CheckNbParams(num,4,ach,"geometric_tolerance")) return;
// Own fields of GeometricTolerance
Handle(TCollection_HAsciiString) aName;
StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
data->ReadEntity (num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
- data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE","GTWDR",num0,num,ach);
// Own fields of GeometricToleranceWithDatumReference
Handle(StepDimTol_HArray1OfDatumSystemOrReference) aDatumSystem;
Standard_Integer sub5 = 0;
new StepDimTol_GeometricToleranceWithDatumReference;
GTWDR->SetDatumSystem(aDatumSystem);
- data->NamedForComplex("MODIFIED_GEOMETRIC_TOLERANCE",num0,num,ach);
+ data->NamedForComplex("MODIFIED_GEOMETRIC_TOLERANCE","MDGMTL",num0,num,ach);
// Own fields of ModifiedGeometricTolerance
StepDimTol_LimitCondition aModifier = StepDimTol_MaximumMaterialCondition;
if (data->ParamType (num, 1) == Interface_ParamEnum) {
const Handle(StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("GEOMETRIC_TOLERANCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE","GMTTLR",num0,num,ach);
if (!data->CheckNbParams(num,4,ach,"geometric_tolerance")) return;
// Own fields of GeometricTolerance
Handle(TCollection_HAsciiString) aName;
StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
data->ReadEntity (num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
- data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE","GTWDR",num0,num,ach);
// Own fields of GeometricToleranceWithDatumReference
Handle(StepDimTol_HArray1OfDatumSystemOrReference) aDatumSystem;
Standard_Integer sub5 = 0;
const Handle(StepDimTol_GeoTolAndGeoTolWthMod)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("GEOMETRIC_TOLERANCE",num0,num,ach);
+ data->NamedForComplex("GEOMETRIC_TOLERANCE","GMTTLR",num0,num,ach);
if (!data->CheckNbParams(num,4,ach,"geometric_tolerance")) return;
// Own fields of GeometricTolerance
Handle(TCollection_HAsciiString) aName;
// sln 04.10.2001. BUC61003. Correction of looking for items of complex entity
Standard_Integer num = 0; // num0
- data->NamedForComplex("BOUNDED_CURVE BNDCRV",num0,num,ach);
-
- // --- Instance of plex componant BoundedCurve ---
-
- if (!data->CheckNbParams(num,0,ach,"bounded_curve")) return;
+ data->NamedForComplex("BOUNDED_CURVE", "BNDCRV",num0,num,ach);
// num = data->NextForComplex(num);
// sln 04.10.2001. BUC61003. Correction of looking for items of complex entity
// num = 0; gka TRJ9
- data->NamedForComplex("B_SPLINE_CURVE BSPCR",num0,num,ach);
+ data->NamedForComplex("B_SPLINE_CURVE", "BSPCR",num0,num,ach);
// --- Instance of common supertype BSplineCurve ---
// num = data->NextForComplex(num);
// sln 04.10.2001. BUC61003. Correction of looking for items of complex entity
// num = 0; //gka TRJ9
- data->NamedForComplex("B_SPLINE_CURVE_WITH_KNOTS BSCWK",num0,num,ach);
+ data->NamedForComplex("B_SPLINE_CURVE_WITH_KNOTS", "BSCWK",num0,num,ach);
// --- Instance of plex componant BSplineCurveWithKnots ---
// num = 0; gka TRJ9
data->NamedForComplex("CURVE",num0,num,ach);
- // --- Instance of plex componant Curve ---
-
- if (!data->CheckNbParams(num,0,ach,"curve")) return;
-
// num = data->NextForComplex(num);
// sln 04.10.2001. BUC61003. Correction of looking for items of complex entity
//num = 0;
- data->NamedForComplex("GEOMETRIC_REPRESENTATION_ITEM GMRPIT",num0,num,ach);
-
- // --- Instance of plex componant GeometricRepresentationItem ---
-
- if (!data->CheckNbParams(num,0,ach,"geometric_representation_item")) return;
+ data->NamedForComplex("GEOMETRIC_REPRESENTATION_ITEM", "GMRPIT",num0,num,ach);
// num = data->NextForComplex(num);
// sln 04.10.2001. BUC61003. Correction of looking for items of complex entity
//num = 0;
- data->NamedForComplex("RATIONAL_B_SPLINE_CURVE RBSC",num0,num,ach);
+ data->NamedForComplex("RATIONAL_B_SPLINE_CURVE", "RBSC",num0,num,ach);
// --- Instance of plex componant RationalBSplineCurve ---
// num = data->NextForComplex(num);
// sln 04.10.2001. BUC61003. Correction of looking for items of complex entity
//num = 0;
- data->NamedForComplex("REPRESENTATION_ITEM RPRITM",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_ITEM", "RPRITM",num0,num,ach);
// --- Instance of plex componant RepresentationItem ---
{
Standard_Integer num = 0; // num0
- data->NamedForComplex("BOUNDED_SURFACE BNDSRF",num0,num,ach);
-
- // --- Instance of plex componant BoundedSurface ---
-
- if (!data->CheckNbParams(num,0,ach,"bounded_surface")) return;
+ data->NamedForComplex("BOUNDED_SURFACE", "BNDSRF",num0,num,ach);
// num = data->NextForComplex(num);
- data->NamedForComplex("B_SPLINE_SURFACE BSPSR",num0,num,ach);
+ data->NamedForComplex("B_SPLINE_SURFACE", "BSPSR",num0,num,ach);
// --- Instance of common supertype BSplineSurface ---
data->ReadLogical (num,7,"self_intersect",ach,aSelfIntersect);
// num = data->NextForComplex(num);
- data->NamedForComplex("B_SPLINE_SURFACE_WITH_KNOTS BSSWK",num0,num,ach);
+ data->NamedForComplex("B_SPLINE_SURFACE_WITH_KNOTS", "BSSWK",num0,num,ach);
// --- Instance of plex componant BSplineSurfaceWithKnots ---
else ach->AddFail("Parameter #5 (knot_spec) is not an enumeration");
// num = data->NextForComplex(num);
- data->NamedForComplex("GEOMETRIC_REPRESENTATION_ITEM GMRPIT",num0,num,ach);
-
- // --- Instance of plex componant GeometricRepresentationItem ---
-
- if (!data->CheckNbParams(num,0,ach,"geometric_representation_item")) return;
+ data->NamedForComplex("GEOMETRIC_REPRESENTATION_ITEM", "GMRPIT",num0,num,ach);
// num = data->NextForComplex(num);
- data->NamedForComplex("RATIONAL_B_SPLINE_SURFACE RBSS",num0,num,ach);
+ data->NamedForComplex("RATIONAL_B_SPLINE_SURFACE", "RBSS",num0,num,ach);
// --- Instance of plex componant RationalBSplineSurface ---
}
// num = data->NextForComplex(num);
- data->NamedForComplex("REPRESENTATION_ITEM RPRITM",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_ITEM", "RPRITM",num0,num,ach);
// --- Instance of plex componant RepresentationItem ---
data->ReadString (num,1,"name",ach,aName);
// num = data->NextForComplex(num);
- data->NamedForComplex("SURFACE SRFC",num0,num,ach);
-
- // --- Instance of plex componant Surface ---
-
- if (!data->CheckNbParams(num,0,ach,"surface")) return;
+ data->NamedForComplex("SURFACE", "SRFC",num0,num,ach);
//--- Initialisation of the red entity ---
const Handle(StepRepr_CompGroupShAspAndCompShAspAndDatumFeatAndShAsp)& ent) const
{
Standard_Integer num = 0;
- data->NamedForComplex("SHAPE_ASPECT", num0, num, ach);
+ data->NamedForComplex("SHAPE_ASPECT","SHPASP", num0, num, ach);
if (!data->CheckNbParams(num, 4, ach, "shape_aspect")) return;
Handle(TCollection_HAsciiString) aName;
const Handle(StepRepr_CompShAspAndDatumFeatAndShAsp)& ent) const
{
Standard_Integer num = 0;
- data->NamedForComplex("SHAPE_ASPECT", num0, num, ach);
+ data->NamedForComplex("SHAPE_ASPECT","SHPASP", num0, num, ach);
if (!data->CheckNbParams(num, 4, ach, "shape_aspect")) return;
Handle(TCollection_HAsciiString) aName;
const Handle(StepRepr_ReprItemAndLengthMeasureWithUnit)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("MEASURE_WITH_UNIT",num0,num,ach);
+ data->NamedForComplex("MEASURE_WITH_UNIT","MSWTUN",num0,num,ach);
if (!data->CheckNbParams(num,2,ach,"measure_with_unit")) return;
// --- own field : valueComponent ---
Handle(StepBasic_MeasureValueMember) mvc = new StepBasic_MeasureValueMember;
Handle(StepBasic_MeasureWithUnit) aMeasureWithUnit = new StepBasic_MeasureWithUnit;
aMeasureWithUnit->Init(mvc, aUnitComponent);
- data->NamedForComplex("REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_ITEM","RPRITM",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"representation_item")) return;
// --- own field : name ---
Handle(TCollection_HAsciiString) aName;
const Handle(StepRepr_ReprItemAndLengthMeasureWithUnitAndQRI)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("MEASURE_WITH_UNIT",num0,num,ach);
+ data->NamedForComplex("MEASURE_WITH_UNIT","MSWTUN",num0,num,ach);
if (!data->CheckNbParams(num,2,ach,"measure_with_unit")) return;
// --- own field : valueComponent ---
Handle(StepBasic_MeasureValueMember) mvc = new StepBasic_MeasureValueMember;
Handle(StepBasic_MeasureWithUnit) aMeasureWithUnit = new StepBasic_MeasureWithUnit;
aMeasureWithUnit->Init(mvc, aUnitComponent);
- data->NamedForComplex("QUALIFIED_REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("QUALIFIED_REPRESENTATION_ITEM","QLRPIT",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"qualified_representation_item")) return;
// --- own field : qualifiers ---
Handle(StepShape_HArray1OfValueQualifier) quals;
Handle(StepShape_QualifiedRepresentationItem) aQRI = new StepShape_QualifiedRepresentationItem();
aQRI->SetQualifiers(quals);
- data->NamedForComplex("REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_ITEM","RPRITM",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"representation_item")) return;
// --- own field : name ---
Handle(TCollection_HAsciiString) aName;
const Handle(StepRepr_ReprItemAndPlaneAngleMeasureWithUnit)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("MEASURE_WITH_UNIT",num0,num,ach);
+ data->NamedForComplex("MEASURE_WITH_UNIT","MSWTUN",num0,num,ach);
if (!data->CheckNbParams(num,2,ach,"measure_with_unit")) return;
// --- own field : valueComponent ---
Handle(StepBasic_MeasureValueMember) mvc = new StepBasic_MeasureValueMember;
Handle(StepBasic_MeasureWithUnit) aMeasureWithUnit = new StepBasic_MeasureWithUnit;
aMeasureWithUnit->Init(mvc, aUnitComponent);
- data->NamedForComplex("REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_ITEM","RPRITM",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"representation_item")) return;
// --- own field : name ---
Handle(TCollection_HAsciiString) aName;
const Handle(StepRepr_ReprItemAndPlaneAngleMeasureWithUnitAndQRI)& ent) const
{
Standard_Integer num = 0;//num0;
- data->NamedForComplex("MEASURE_WITH_UNIT",num0,num,ach);
+ data->NamedForComplex("MEASURE_WITH_UNIT","MSWTUN",num0,num,ach);
if (!data->CheckNbParams(num,2,ach,"measure_with_unit")) return;
// --- own field : valueComponent ---
Handle(StepBasic_MeasureValueMember) mvc = new StepBasic_MeasureValueMember;
Handle(StepBasic_MeasureWithUnit) aMeasureWithUnit = new StepBasic_MeasureWithUnit;
aMeasureWithUnit->Init(mvc, aUnitComponent);
- data->NamedForComplex("QUALIFIED_REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("QUALIFIED_REPRESENTATION_ITEM","QLRPIT",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"qualified_representation_item")) return;
// --- own field : qualifiers ---
Handle(StepShape_HArray1OfValueQualifier) quals;
Handle(StepShape_QualifiedRepresentationItem) aQRI = new StepShape_QualifiedRepresentationItem();
aQRI->SetQualifiers(quals);
- data->NamedForComplex("REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_ITEM","RPRITM",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"representation_item")) return;
// --- own field : name ---
Handle(TCollection_HAsciiString) aName;
// --- Instance of plex componant RepresentationRelationship ---
Standard_Integer num = 0; // num0;
- data->NamedForComplex("REPRESENTATION_RELATIONSHIP RPRRLT",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_RELATIONSHIP", "RPRRLT",num0,num,ach);
// --- Number of Parameter Control ---
// --- Instance of plex componant RepresentationRelationshipWithTransformation ---
- data->NamedForComplex("REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION RRWT",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION", "RRWT",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"representation_relationship_with_transformation")) return;
// --- own field : transformation_operator
// --- Instance of plex componant ShapeRepresentationRelationship ---
- data->NamedForComplex("SHAPE_REPRESENTATION_RELATIONSHIP SHRPRL",num0,num,ach);
+ data->NamedForComplex("SHAPE_REPRESENTATION_RELATIONSHIP", "SHRPRL",num0,num,ach);
if (!data->CheckNbParams(num,0,ach,"shape_representation_relationship")) return;
//--- Initialisation of the read entity ---
// --- Instance of plex componant : MeasureReprItem
Standard_Integer num = 0;
- data->NamedForComplex("MEASURE_REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("MEASURE_REPRESENTATION_ITEM","MSRPIT",num0,num,ach);
// --- Number of Parameter Control ---
// --- Instance of plex componant : QualifiedReprItem
- data->NamedForComplex("QUALIFIED_REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("QUALIFIED_REPRESENTATION_ITEM","QLRPIT",num0,num,ach);
// --- Number of Parameter Control ---
// --- Instance of plex componant : RepresentationItem
- data->NamedForComplex("REPRESENTATION_ITEM",num0,num,ach);
+ data->NamedForComplex("REPRESENTATION_ITEM","RPRITM",num0,num,ach);
if (!data->CheckNbParams(num,1,ach,"representation_item")) return;
return Standard_False;
}
+//=======================================================================
+//function : NamedForComplex
+//purpose :
+//=======================================================================
+
+Standard_Boolean StepData_StepReaderData::NamedForComplex
+ (const Standard_CString theName, const Standard_CString theShortName,
+ const Standard_Integer num0, Standard_Integer& num,
+ Handle(Interface_Check)& ach) const
+{
+ Standard_Integer n = (num <= 0 ? num0 : NextForComplex(num));
+ if ((n!=0) && !(stepstrcmp(RecordType(n).ToCString(),theName) &&
+ stepstrcmp(RecordType(n).ToCString(), theShortName)))
+ { num = n; return Standard_True; }
+
+ if (n == 0)
+ NamedForComplex (theName, theShortName, num0, n, ach);
+ //entities are not in alphabetical order
+ Handle(String) errmess = new String("Parameter n0.%d (%s) not a LIST");
+ sprintf (txtmes,errmess->ToCString(), num0, theName);
+ for (n = num0; n > 0; n = NextForComplex(n)) {
+ if (!(stepstrcmp(RecordType(n).ToCString(),theName) &&
+ stepstrcmp(RecordType(n).ToCString(), theShortName))) {
+ num = n;
+ errmess = new String("Complex Record n0.%d, member type %s not in alphabetic order");
+ sprintf (txtmes,errmess->ToCString(), num0, theName);
+ ach->AddWarning(txtmes,errmess->ToCString());
+ return Standard_False;
+ }
+ }
+ num = 0;
+ errmess = new String("Complex Record n0.%d, member type %s not found");
+ sprintf (txtmes,errmess->ToCString(), num0, theName);
+ ach->AddFail (txtmes,errmess->ToCString());
+ return Standard_False;
+}
+
// ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
//! Returns True if alphabetic order, False else
Standard_EXPORT Standard_Boolean NamedForComplex (const Standard_CString name, const Standard_Integer num0, Standard_Integer& num, Handle(Interface_Check)& ach) const;
+ //! Determines the first component which brings a given name, or
+ //! short name for a Complex Type Entity
+ //! <num0> is the very first record of this entity
+ //! <num> is given the last NextNamedForComplex, starts at zero
+ //! it is returned as the newly found number
+ //! Hence, in the normal case, NextNamedForComplex starts by num0
+ //! if <num> is zero, else by NextForComplex(num)
+ //! If the alphabetic order is not respected, it restarts from
+ //! num0 and loops on NextForComplex until finding <name>
+ //! In case of "non-alphabetic order", <ach> is filled with a
+ //! Warning for this name
+ //! In case of "not-found at all", <ach> is filled with a Fail,
+ //! and <num> is returned as zero
+ //!
+ //! Returns True if alphabetic order, False else
+ Standard_EXPORT Standard_Boolean NamedForComplex (const Standard_CString theName, const Standard_CString theShortName, const Standard_Integer num0, Standard_Integer& num, Handle(Interface_Check)& ach) const;
+
//! Checks Count of Parameters of record <num> to equate <nbreq>
//! If this Check is successful, returns True
//! Else, fills <ach> with an Error Message then returns False
--- /dev/null
+puts "========"
+puts "OCC26715"
+puts "========"
+puts ""
+##########################################################################
+# Problems in reading STEP short names in complex entities
+##########################################################################
+
+stepread [locate_data_file bug26715_001.stp] a *
+tpcompound result
+
+set square 28950.7
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX : 420
+ EDGE : 536
+ WIRE : 120
+ FACE : 118
+ SHELL : 1
+ SOLID : 1
+ COMPSOLID : 0
+ COMPOUND : 1
+ SHAPE : 1197
+"
+checknbshapes result -ref ${nbshapes_expected} -t -m "importing file"
+
+set 3dviewer 1
--- /dev/null
+puts "========"
+puts "OCC26715"
+puts "========"
+puts ""
+##########################################################################
+# Problems in reading STEP short names in complex entities
+##########################################################################
+
+stepread [locate_data_file bug26715_003.stp] a *
+tpcompound result
+
+set square 23212.2
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX : 3840
+ EDGE : 3840
+ WIRE : 487
+ FACE : 485
+ SHELL : 485
+ SOLID : 0
+ COMPSOLID : 0
+ COMPOUND : 1
+ SHAPE : 9138
+"
+checknbshapes result -ref ${nbshapes_expected} -t -m "importing file"
+
+set 3dviewer 1
--- /dev/null
+puts "========"
+puts "OCC26715"
+puts "========"
+puts ""
+##########################################################################
+# Problems in reading STEP short names in complex entities
+##########################################################################
+
+stepread [locate_data_file bug26715_004.stp] a *
+tpcompound result
+
+set square 28950.7
+
+set nbshapes_expected "
+Number of shapes in shape
+ VERTEX : 420
+ EDGE : 536
+ WIRE : 120
+ FACE : 118
+ SHELL : 1
+ SOLID : 1
+ COMPSOLID : 0
+ COMPOUND : 1
+ SHAPE : 1197
+"
+checknbshapes result -ref ${nbshapes_expected} -t -m "importing file"
+
+set 3dviewer 1