1 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 // This file is part of Open CASCADE Technology software library.
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
15 #include <IGESData_DirChecker.hxx>
16 #include <IGESData_IGESEntity.hxx>
17 #include <IGESDimen_AngularDimension.hxx>
18 #include <IGESDimen_BasicDimension.hxx>
19 #include <IGESDimen_CenterLine.hxx>
20 #include <IGESDimen_CurveDimension.hxx>
21 #include <IGESDimen_DiameterDimension.hxx>
22 #include <IGESDimen_DimensionDisplayData.hxx>
23 #include <IGESDimen_DimensionedGeometry.hxx>
24 #include <IGESDimen_DimensionTolerance.hxx>
25 #include <IGESDimen_DimensionUnits.hxx>
26 #include <IGESDimen_FlagNote.hxx>
27 #include <IGESDimen_GeneralLabel.hxx>
28 #include <IGESDimen_GeneralModule.hxx>
29 #include <IGESDimen_GeneralNote.hxx>
30 #include <IGESDimen_GeneralSymbol.hxx>
31 #include <IGESDimen_LeaderArrow.hxx>
32 #include <IGESDimen_LinearDimension.hxx>
33 #include <IGESDimen_NewDimensionedGeometry.hxx>
34 #include <IGESDimen_NewGeneralNote.hxx>
35 #include <IGESDimen_OrdinateDimension.hxx>
36 #include <IGESDimen_PointDimension.hxx>
37 #include <IGESDimen_RadiusDimension.hxx>
38 #include <IGESDimen_Section.hxx>
39 #include <IGESDimen_SectionedArea.hxx>
40 #include <IGESDimen_ToolAngularDimension.hxx>
41 #include <IGESDimen_ToolBasicDimension.hxx>
42 #include <IGESDimen_ToolCenterLine.hxx>
43 #include <IGESDimen_ToolCurveDimension.hxx>
44 #include <IGESDimen_ToolDiameterDimension.hxx>
45 #include <IGESDimen_ToolDimensionDisplayData.hxx>
46 #include <IGESDimen_ToolDimensionedGeometry.hxx>
47 #include <IGESDimen_ToolDimensionTolerance.hxx>
48 #include <IGESDimen_ToolDimensionUnits.hxx>
49 #include <IGESDimen_ToolFlagNote.hxx>
50 #include <IGESDimen_ToolGeneralLabel.hxx>
51 #include <IGESDimen_ToolGeneralNote.hxx>
52 #include <IGESDimen_ToolGeneralSymbol.hxx>
53 #include <IGESDimen_ToolLeaderArrow.hxx>
54 #include <IGESDimen_ToolLinearDimension.hxx>
55 #include <IGESDimen_ToolNewDimensionedGeometry.hxx>
56 #include <IGESDimen_ToolNewGeneralNote.hxx>
57 #include <IGESDimen_ToolOrdinateDimension.hxx>
58 #include <IGESDimen_ToolPointDimension.hxx>
59 #include <IGESDimen_ToolRadiusDimension.hxx>
60 #include <IGESDimen_ToolSection.hxx>
61 #include <IGESDimen_ToolSectionedArea.hxx>
62 #include <IGESDimen_ToolWitnessLine.hxx>
63 #include <IGESDimen_WitnessLine.hxx>
64 #include <Interface_Category.hxx>
65 #include <Interface_Check.hxx>
66 #include <Interface_CopyTool.hxx>
67 #include <Interface_EntityIterator.hxx>
68 #include <Interface_Macros.hxx>
69 #include <Interface_ShareTool.hxx>
70 #include <Standard_Transient.hxx>
71 #include <Standard_Type.hxx>
73 IMPLEMENT_STANDARD_RTTIEXT(IGESDimen_GeneralModule,IGESData_GeneralModule)
75 // Each Module is attached to a Protocol : it must interprete Case Numbers
76 // (arguments <CN> of various methods) in accordance to values returned by
77 // the method TypeNumber from this Protocol
78 IGESDimen_GeneralModule::IGESDimen_GeneralModule () { }
81 void IGESDimen_GeneralModule::OwnSharedCase
82 (const Standard_Integer CN, const Handle(IGESData_IGESEntity)& ent,
83 Interface_EntityIterator& iter) const
87 DeclareAndCast(IGESDimen_AngularDimension,anent,ent);
88 if (anent.IsNull()) return;
89 IGESDimen_ToolAngularDimension tool;
90 tool.OwnShared(anent,iter);
94 DeclareAndCast(IGESDimen_BasicDimension,anent,ent);
95 if (anent.IsNull()) return;
96 IGESDimen_ToolBasicDimension tool;
97 tool.OwnShared(anent,iter);
101 DeclareAndCast(IGESDimen_CenterLine,anent,ent);
102 if (anent.IsNull()) return;
103 IGESDimen_ToolCenterLine tool;
104 tool.OwnShared(anent,iter);
108 DeclareAndCast(IGESDimen_CurveDimension,anent,ent);
109 if (anent.IsNull()) return;
110 IGESDimen_ToolCurveDimension tool;
111 tool.OwnShared(anent,iter);
115 DeclareAndCast(IGESDimen_DiameterDimension,anent,ent);
116 if (anent.IsNull()) return;
117 IGESDimen_ToolDiameterDimension tool;
118 tool.OwnShared(anent,iter);
122 DeclareAndCast(IGESDimen_DimensionDisplayData,anent,ent);
123 if (anent.IsNull()) return;
124 IGESDimen_ToolDimensionDisplayData tool;
125 tool.OwnShared(anent,iter);
129 DeclareAndCast(IGESDimen_DimensionTolerance,anent,ent);
130 if (anent.IsNull()) return;
131 IGESDimen_ToolDimensionTolerance tool;
132 tool.OwnShared(anent,iter);
136 DeclareAndCast(IGESDimen_DimensionUnits,anent,ent);
137 if (anent.IsNull()) return;
138 IGESDimen_ToolDimensionUnits tool;
139 tool.OwnShared(anent,iter);
143 DeclareAndCast(IGESDimen_DimensionedGeometry,anent,ent);
144 if (anent.IsNull()) return;
145 IGESDimen_ToolDimensionedGeometry tool;
146 tool.OwnShared(anent,iter);
150 DeclareAndCast(IGESDimen_FlagNote,anent,ent);
151 if (anent.IsNull()) return;
152 IGESDimen_ToolFlagNote tool;
153 tool.OwnShared(anent,iter);
157 DeclareAndCast(IGESDimen_GeneralLabel,anent,ent);
158 if (anent.IsNull()) return;
159 IGESDimen_ToolGeneralLabel tool;
160 tool.OwnShared(anent,iter);
164 DeclareAndCast(IGESDimen_GeneralNote,anent,ent);
165 if (anent.IsNull()) return;
166 IGESDimen_ToolGeneralNote tool;
167 tool.OwnShared(anent,iter);
171 DeclareAndCast(IGESDimen_GeneralSymbol,anent,ent);
172 if (anent.IsNull()) return;
173 IGESDimen_ToolGeneralSymbol tool;
174 tool.OwnShared(anent,iter);
178 DeclareAndCast(IGESDimen_LeaderArrow,anent,ent);
179 if (anent.IsNull()) return;
180 IGESDimen_ToolLeaderArrow tool;
181 tool.OwnShared(anent,iter);
185 DeclareAndCast(IGESDimen_LinearDimension,anent,ent);
186 if (anent.IsNull()) return;
187 IGESDimen_ToolLinearDimension tool;
188 tool.OwnShared(anent,iter);
192 DeclareAndCast(IGESDimen_NewDimensionedGeometry,anent,ent);
193 if (anent.IsNull()) return;
194 IGESDimen_ToolNewDimensionedGeometry tool;
195 tool.OwnShared(anent,iter);
199 DeclareAndCast(IGESDimen_NewGeneralNote,anent,ent);
200 if (anent.IsNull()) return;
201 IGESDimen_ToolNewGeneralNote tool;
202 tool.OwnShared(anent,iter);
206 DeclareAndCast(IGESDimen_OrdinateDimension,anent,ent);
207 if (anent.IsNull()) return;
208 IGESDimen_ToolOrdinateDimension tool;
209 tool.OwnShared(anent,iter);
213 DeclareAndCast(IGESDimen_PointDimension,anent,ent);
214 if (anent.IsNull()) return;
215 IGESDimen_ToolPointDimension tool;
216 tool.OwnShared(anent,iter);
220 DeclareAndCast(IGESDimen_RadiusDimension,anent,ent);
221 if (anent.IsNull()) return;
222 IGESDimen_ToolRadiusDimension tool;
223 tool.OwnShared(anent,iter);
227 DeclareAndCast(IGESDimen_Section,anent,ent);
228 if (anent.IsNull()) return;
229 IGESDimen_ToolSection tool;
230 tool.OwnShared(anent,iter);
234 DeclareAndCast(IGESDimen_SectionedArea,anent,ent);
235 if (anent.IsNull()) return;
236 IGESDimen_ToolSectionedArea tool;
237 tool.OwnShared(anent,iter);
241 DeclareAndCast(IGESDimen_WitnessLine,anent,ent);
242 if (anent.IsNull()) return;
243 IGESDimen_ToolWitnessLine tool;
244 tool.OwnShared(anent,iter);
252 IGESData_DirChecker IGESDimen_GeneralModule::DirChecker
253 (const Standard_Integer CN, const Handle(IGESData_IGESEntity)& ent) const
257 DeclareAndCast(IGESDimen_AngularDimension,anent,ent);
258 if (anent.IsNull()) break;
259 IGESDimen_ToolAngularDimension tool;
260 return tool.DirChecker(anent);
263 DeclareAndCast(IGESDimen_BasicDimension,anent,ent);
264 if (anent.IsNull()) break;
265 IGESDimen_ToolBasicDimension tool;
266 return tool.DirChecker(anent);
269 DeclareAndCast(IGESDimen_CenterLine,anent,ent);
270 if (anent.IsNull()) break;
271 IGESDimen_ToolCenterLine tool;
272 return tool.DirChecker(anent);
275 DeclareAndCast(IGESDimen_CurveDimension,anent,ent);
276 if (anent.IsNull()) break;
277 IGESDimen_ToolCurveDimension tool;
278 return tool.DirChecker(anent);
281 DeclareAndCast(IGESDimen_DiameterDimension,anent,ent);
282 if (anent.IsNull()) break;
283 IGESDimen_ToolDiameterDimension tool;
284 return tool.DirChecker(anent);
287 DeclareAndCast(IGESDimen_DimensionDisplayData,anent,ent);
288 if (anent.IsNull()) break;
289 IGESDimen_ToolDimensionDisplayData tool;
290 return tool.DirChecker(anent);
293 DeclareAndCast(IGESDimen_DimensionTolerance,anent,ent);
294 if (anent.IsNull()) break;
295 IGESDimen_ToolDimensionTolerance tool;
296 return tool.DirChecker(anent);
299 DeclareAndCast(IGESDimen_DimensionUnits,anent,ent);
300 if (anent.IsNull()) break;
301 IGESDimen_ToolDimensionUnits tool;
302 return tool.DirChecker(anent);
305 DeclareAndCast(IGESDimen_DimensionedGeometry,anent,ent);
306 if (anent.IsNull()) break;
307 IGESDimen_ToolDimensionedGeometry tool;
308 return tool.DirChecker(anent);
311 DeclareAndCast(IGESDimen_FlagNote,anent,ent);
312 if (anent.IsNull()) break;
313 IGESDimen_ToolFlagNote tool;
314 return tool.DirChecker(anent);
317 DeclareAndCast(IGESDimen_GeneralLabel,anent,ent);
318 if (anent.IsNull()) break;
319 IGESDimen_ToolGeneralLabel tool;
320 return tool.DirChecker(anent);
323 DeclareAndCast(IGESDimen_GeneralNote,anent,ent);
324 if (anent.IsNull()) break;
325 IGESDimen_ToolGeneralNote tool;
326 return tool.DirChecker(anent);
329 DeclareAndCast(IGESDimen_GeneralSymbol,anent,ent);
330 if (anent.IsNull()) break;
331 IGESDimen_ToolGeneralSymbol tool;
332 return tool.DirChecker(anent);
335 DeclareAndCast(IGESDimen_LeaderArrow,anent,ent);
336 if (anent.IsNull()) break;
337 IGESDimen_ToolLeaderArrow tool;
338 return tool.DirChecker(anent);
341 DeclareAndCast(IGESDimen_LinearDimension,anent,ent);
342 if (anent.IsNull()) break;
343 IGESDimen_ToolLinearDimension tool;
344 return tool.DirChecker(anent);
347 DeclareAndCast(IGESDimen_NewDimensionedGeometry,anent,ent);
348 if (anent.IsNull()) break;
349 IGESDimen_ToolNewDimensionedGeometry tool;
350 return tool.DirChecker(anent);
353 DeclareAndCast(IGESDimen_NewGeneralNote,anent,ent);
354 if (anent.IsNull()) break;
355 IGESDimen_ToolNewGeneralNote tool;
356 return tool.DirChecker(anent);
359 DeclareAndCast(IGESDimen_OrdinateDimension,anent,ent);
360 if (anent.IsNull()) break;
361 IGESDimen_ToolOrdinateDimension tool;
362 return tool.DirChecker(anent);
365 DeclareAndCast(IGESDimen_PointDimension,anent,ent);
366 if (anent.IsNull()) break;
367 IGESDimen_ToolPointDimension tool;
368 return tool.DirChecker(anent);
371 DeclareAndCast(IGESDimen_RadiusDimension,anent,ent);
372 if (anent.IsNull()) break;
373 IGESDimen_ToolRadiusDimension tool;
374 return tool.DirChecker(anent);
377 DeclareAndCast(IGESDimen_Section,anent,ent);
378 if (anent.IsNull()) break;
379 IGESDimen_ToolSection tool;
380 return tool.DirChecker(anent);
383 DeclareAndCast(IGESDimen_SectionedArea,anent,ent);
384 if (anent.IsNull()) break;
385 IGESDimen_ToolSectionedArea tool;
386 return tool.DirChecker(anent);
389 DeclareAndCast(IGESDimen_WitnessLine,anent,ent);
390 if (anent.IsNull()) break;
391 IGESDimen_ToolWitnessLine tool;
392 return tool.DirChecker(anent);
396 return IGESData_DirChecker(); // by default, no specific criterium
400 void IGESDimen_GeneralModule::OwnCheckCase
401 (const Standard_Integer CN, const Handle(IGESData_IGESEntity)& ent,
402 const Interface_ShareTool& shares, Handle(Interface_Check)& ach) const
406 DeclareAndCast(IGESDimen_AngularDimension,anent,ent);
407 if (anent.IsNull()) return;
408 IGESDimen_ToolAngularDimension tool;
409 tool.OwnCheck(anent,shares,ach);
413 DeclareAndCast(IGESDimen_BasicDimension,anent,ent);
414 if (anent.IsNull()) return;
415 IGESDimen_ToolBasicDimension tool;
416 tool.OwnCheck(anent,shares,ach);
420 DeclareAndCast(IGESDimen_CenterLine,anent,ent);
421 if (anent.IsNull()) return;
422 IGESDimen_ToolCenterLine tool;
423 tool.OwnCheck(anent,shares,ach);
427 DeclareAndCast(IGESDimen_CurveDimension,anent,ent);
428 if (anent.IsNull()) return;
429 IGESDimen_ToolCurveDimension tool;
430 tool.OwnCheck(anent,shares,ach);
434 DeclareAndCast(IGESDimen_DiameterDimension,anent,ent);
435 if (anent.IsNull()) return;
436 IGESDimen_ToolDiameterDimension tool;
437 tool.OwnCheck(anent,shares,ach);
441 DeclareAndCast(IGESDimen_DimensionDisplayData,anent,ent);
442 if (anent.IsNull()) return;
443 IGESDimen_ToolDimensionDisplayData tool;
444 tool.OwnCheck(anent,shares,ach);
448 DeclareAndCast(IGESDimen_DimensionTolerance,anent,ent);
449 if (anent.IsNull()) return;
450 IGESDimen_ToolDimensionTolerance tool;
451 tool.OwnCheck(anent,shares,ach);
455 DeclareAndCast(IGESDimen_DimensionUnits,anent,ent);
456 if (anent.IsNull()) return;
457 IGESDimen_ToolDimensionUnits tool;
458 tool.OwnCheck(anent,shares,ach);
462 DeclareAndCast(IGESDimen_DimensionedGeometry,anent,ent);
463 if (anent.IsNull()) return;
464 IGESDimen_ToolDimensionedGeometry tool;
465 tool.OwnCheck(anent,shares,ach);
469 DeclareAndCast(IGESDimen_FlagNote,anent,ent);
470 if (anent.IsNull()) return;
471 IGESDimen_ToolFlagNote tool;
472 tool.OwnCheck(anent,shares,ach);
476 DeclareAndCast(IGESDimen_GeneralLabel,anent,ent);
477 if (anent.IsNull()) return;
478 IGESDimen_ToolGeneralLabel tool;
479 tool.OwnCheck(anent,shares,ach);
483 DeclareAndCast(IGESDimen_GeneralNote,anent,ent);
484 if (anent.IsNull()) return;
485 IGESDimen_ToolGeneralNote tool;
486 tool.OwnCheck(anent,shares,ach);
490 DeclareAndCast(IGESDimen_GeneralSymbol,anent,ent);
491 if (anent.IsNull()) return;
492 IGESDimen_ToolGeneralSymbol tool;
493 tool.OwnCheck(anent,shares,ach);
497 DeclareAndCast(IGESDimen_LeaderArrow,anent,ent);
498 if (anent.IsNull()) return;
499 IGESDimen_ToolLeaderArrow tool;
500 tool.OwnCheck(anent,shares,ach);
504 DeclareAndCast(IGESDimen_LinearDimension,anent,ent);
505 if (anent.IsNull()) return;
506 IGESDimen_ToolLinearDimension tool;
507 tool.OwnCheck(anent,shares,ach);
511 DeclareAndCast(IGESDimen_NewDimensionedGeometry,anent,ent);
512 if (anent.IsNull()) return;
513 IGESDimen_ToolNewDimensionedGeometry tool;
514 tool.OwnCheck(anent,shares,ach);
518 DeclareAndCast(IGESDimen_NewGeneralNote,anent,ent);
519 if (anent.IsNull()) return;
520 IGESDimen_ToolNewGeneralNote tool;
521 tool.OwnCheck(anent,shares,ach);
525 DeclareAndCast(IGESDimen_OrdinateDimension,anent,ent);
526 if (anent.IsNull()) return;
527 IGESDimen_ToolOrdinateDimension tool;
528 tool.OwnCheck(anent,shares,ach);
532 DeclareAndCast(IGESDimen_PointDimension,anent,ent);
533 if (anent.IsNull()) return;
534 IGESDimen_ToolPointDimension tool;
535 tool.OwnCheck(anent,shares,ach);
539 DeclareAndCast(IGESDimen_RadiusDimension,anent,ent);
540 if (anent.IsNull()) return;
541 IGESDimen_ToolRadiusDimension tool;
542 tool.OwnCheck(anent,shares,ach);
546 DeclareAndCast(IGESDimen_Section,anent,ent);
547 if (anent.IsNull()) return;
548 IGESDimen_ToolSection tool;
549 tool.OwnCheck(anent,shares,ach);
553 DeclareAndCast(IGESDimen_SectionedArea,anent,ent);
554 if (anent.IsNull()) return;
555 IGESDimen_ToolSectionedArea tool;
556 tool.OwnCheck(anent,shares,ach);
560 DeclareAndCast(IGESDimen_WitnessLine,anent,ent);
561 if (anent.IsNull()) return;
562 IGESDimen_ToolWitnessLine tool;
563 tool.OwnCheck(anent,shares,ach);
571 Standard_Boolean IGESDimen_GeneralModule::NewVoid
572 (const Standard_Integer CN, Handle(Standard_Transient)& ent) const
575 case 1 : ent = new IGESDimen_AngularDimension; break;
576 case 2 : ent = new IGESDimen_BasicDimension; break;
577 case 3 : ent = new IGESDimen_CenterLine; break;
578 case 4 : ent = new IGESDimen_CurveDimension; break;
579 case 5 : ent = new IGESDimen_DiameterDimension; break;
580 case 6 : ent = new IGESDimen_DimensionDisplayData; break;
581 case 7 : ent = new IGESDimen_DimensionTolerance; break;
582 case 8 : ent = new IGESDimen_DimensionUnits; break;
583 case 9 : ent = new IGESDimen_DimensionedGeometry; break;
584 case 10 : ent = new IGESDimen_FlagNote; break;
585 case 11 : ent = new IGESDimen_GeneralLabel; break;
586 case 12 : ent = new IGESDimen_GeneralNote; break;
587 case 13 : ent = new IGESDimen_GeneralSymbol; break;
588 case 14 : ent = new IGESDimen_LeaderArrow; break;
589 case 15 : ent = new IGESDimen_LinearDimension; break;
590 case 16 : ent = new IGESDimen_NewDimensionedGeometry; break;
591 case 17 : ent = new IGESDimen_NewGeneralNote; break;
592 case 18 : ent = new IGESDimen_OrdinateDimension; break;
593 case 19 : ent = new IGESDimen_PointDimension; break;
594 case 20 : ent = new IGESDimen_RadiusDimension; break;
595 case 21 : ent = new IGESDimen_Section; break;
596 case 22 : ent = new IGESDimen_SectionedArea; break;
597 case 23 : ent = new IGESDimen_WitnessLine; break;
598 default : return Standard_False; // by default, Failure on Recognize
600 return Standard_True;
604 void IGESDimen_GeneralModule::OwnCopyCase
605 (const Standard_Integer CN,
606 const Handle(IGESData_IGESEntity)& entfrom,
607 const Handle(IGESData_IGESEntity)& entto,
608 Interface_CopyTool& TC) const
612 DeclareAndCast(IGESDimen_AngularDimension,enfr,entfrom);
613 DeclareAndCast(IGESDimen_AngularDimension,ento,entto);
614 IGESDimen_ToolAngularDimension tool;
615 tool.OwnCopy(enfr,ento,TC);
619 DeclareAndCast(IGESDimen_BasicDimension,enfr,entfrom);
620 DeclareAndCast(IGESDimen_BasicDimension,ento,entto);
621 IGESDimen_ToolBasicDimension tool;
622 tool.OwnCopy(enfr,ento,TC);
626 DeclareAndCast(IGESDimen_CenterLine,enfr,entfrom);
627 DeclareAndCast(IGESDimen_CenterLine,ento,entto);
628 IGESDimen_ToolCenterLine tool;
629 tool.OwnCopy(enfr,ento,TC);
633 DeclareAndCast(IGESDimen_CurveDimension,enfr,entfrom);
634 DeclareAndCast(IGESDimen_CurveDimension,ento,entto);
635 IGESDimen_ToolCurveDimension tool;
636 tool.OwnCopy(enfr,ento,TC);
640 DeclareAndCast(IGESDimen_DiameterDimension,enfr,entfrom);
641 DeclareAndCast(IGESDimen_DiameterDimension,ento,entto);
642 IGESDimen_ToolDiameterDimension tool;
643 tool.OwnCopy(enfr,ento,TC);
647 DeclareAndCast(IGESDimen_DimensionDisplayData,enfr,entfrom);
648 DeclareAndCast(IGESDimen_DimensionDisplayData,ento,entto);
649 IGESDimen_ToolDimensionDisplayData tool;
650 tool.OwnCopy(enfr,ento,TC);
654 DeclareAndCast(IGESDimen_DimensionTolerance,enfr,entfrom);
655 DeclareAndCast(IGESDimen_DimensionTolerance,ento,entto);
656 IGESDimen_ToolDimensionTolerance tool;
657 tool.OwnCopy(enfr,ento,TC);
661 DeclareAndCast(IGESDimen_DimensionUnits,enfr,entfrom);
662 DeclareAndCast(IGESDimen_DimensionUnits,ento,entto);
663 IGESDimen_ToolDimensionUnits tool;
664 tool.OwnCopy(enfr,ento,TC);
668 DeclareAndCast(IGESDimen_DimensionedGeometry,enfr,entfrom);
669 DeclareAndCast(IGESDimen_DimensionedGeometry,ento,entto);
670 IGESDimen_ToolDimensionedGeometry tool;
671 tool.OwnCopy(enfr,ento,TC);
675 DeclareAndCast(IGESDimen_FlagNote,enfr,entfrom);
676 DeclareAndCast(IGESDimen_FlagNote,ento,entto);
677 IGESDimen_ToolFlagNote tool;
678 tool.OwnCopy(enfr,ento,TC);
682 DeclareAndCast(IGESDimen_GeneralLabel,enfr,entfrom);
683 DeclareAndCast(IGESDimen_GeneralLabel,ento,entto);
684 IGESDimen_ToolGeneralLabel tool;
685 tool.OwnCopy(enfr,ento,TC);
689 DeclareAndCast(IGESDimen_GeneralNote,enfr,entfrom);
690 DeclareAndCast(IGESDimen_GeneralNote,ento,entto);
691 IGESDimen_ToolGeneralNote tool;
692 tool.OwnCopy(enfr,ento,TC);
696 DeclareAndCast(IGESDimen_GeneralSymbol,enfr,entfrom);
697 DeclareAndCast(IGESDimen_GeneralSymbol,ento,entto);
698 IGESDimen_ToolGeneralSymbol tool;
699 tool.OwnCopy(enfr,ento,TC);
703 DeclareAndCast(IGESDimen_LeaderArrow,enfr,entfrom);
704 DeclareAndCast(IGESDimen_LeaderArrow,ento,entto);
705 IGESDimen_ToolLeaderArrow tool;
706 tool.OwnCopy(enfr,ento,TC);
710 DeclareAndCast(IGESDimen_LinearDimension,enfr,entfrom);
711 DeclareAndCast(IGESDimen_LinearDimension,ento,entto);
712 IGESDimen_ToolLinearDimension tool;
713 tool.OwnCopy(enfr,ento,TC);
717 DeclareAndCast(IGESDimen_NewDimensionedGeometry,enfr,entfrom);
718 DeclareAndCast(IGESDimen_NewDimensionedGeometry,ento,entto);
719 IGESDimen_ToolNewDimensionedGeometry tool;
720 tool.OwnCopy(enfr,ento,TC);
724 DeclareAndCast(IGESDimen_NewGeneralNote,enfr,entfrom);
725 DeclareAndCast(IGESDimen_NewGeneralNote,ento,entto);
726 IGESDimen_ToolNewGeneralNote tool;
727 tool.OwnCopy(enfr,ento,TC);
731 DeclareAndCast(IGESDimen_OrdinateDimension,enfr,entfrom);
732 DeclareAndCast(IGESDimen_OrdinateDimension,ento,entto);
733 IGESDimen_ToolOrdinateDimension tool;
734 tool.OwnCopy(enfr,ento,TC);
738 DeclareAndCast(IGESDimen_PointDimension,enfr,entfrom);
739 DeclareAndCast(IGESDimen_PointDimension,ento,entto);
740 IGESDimen_ToolPointDimension tool;
741 tool.OwnCopy(enfr,ento,TC);
745 DeclareAndCast(IGESDimen_RadiusDimension,enfr,entfrom);
746 DeclareAndCast(IGESDimen_RadiusDimension,ento,entto);
747 IGESDimen_ToolRadiusDimension tool;
748 tool.OwnCopy(enfr,ento,TC);
752 DeclareAndCast(IGESDimen_Section,enfr,entfrom);
753 DeclareAndCast(IGESDimen_Section,ento,entto);
754 IGESDimen_ToolSection tool;
755 tool.OwnCopy(enfr,ento,TC);
759 DeclareAndCast(IGESDimen_SectionedArea,enfr,entfrom);
760 DeclareAndCast(IGESDimen_SectionedArea,ento,entto);
761 IGESDimen_ToolSectionedArea tool;
762 tool.OwnCopy(enfr,ento,TC);
766 DeclareAndCast(IGESDimen_WitnessLine,enfr,entfrom);
767 DeclareAndCast(IGESDimen_WitnessLine,ento,entto);
768 IGESDimen_ToolWitnessLine tool;
769 tool.OwnCopy(enfr,ento,TC);
777 Standard_Integer IGESDimen_GeneralModule::CategoryNumber
778 (const Standard_Integer /*CN*/, const Handle(Standard_Transient)& ,
779 const Interface_ShareTool& ) const
781 return Interface_Category::Number("Drawing");