Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-27 09:18:02

0001 // Created on: 1993-01-11
0002 // Created by: CKY / Contract Toubro-Larsen ( Niraj RANGWALA )
0003 // Copyright (c) 1993-1999 Matra Datavision
0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0005 //
0006 // This file is part of Open CASCADE Technology software library.
0007 //
0008 // This library is free software; you can redistribute it and/or modify it under
0009 // the terms of the GNU Lesser General Public License version 2.1 as published
0010 // by the Free Software Foundation, with special exception defined in the file
0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0012 // distribution for complete text of the license and disclaimer of any warranty.
0013 //
0014 // Alternatively, this file may be used under the terms of Open CASCADE
0015 // commercial license or contractual agreement.
0016 
0017 #ifndef _IGESDraw_ConnectPoint_HeaderFile
0018 #define _IGESDraw_ConnectPoint_HeaderFile
0019 
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022 
0023 #include <gp_XYZ.hxx>
0024 #include <Standard_Integer.hxx>
0025 #include <IGESData_IGESEntity.hxx>
0026 class TCollection_HAsciiString;
0027 class IGESGraph_TextDisplayTemplate;
0028 class gp_Pnt;
0029 
0030 //! defines IGESConnectPoint, Type <132> Form Number <0>
0031 //! in package IGESDraw
0032 //!
0033 //! Connect Point Entity describes a point of connection for
0034 //! zero, one or more entities. Its referenced from Composite
0035 //! curve, or Network Subfigure Definition/Instance, or Flow
0036 //! Associative Instance, or it may stand alone.
0037 class IGESDraw_ConnectPoint : public IGESData_IGESEntity
0038 {
0039 
0040 public:
0041   Standard_EXPORT IGESDraw_ConnectPoint();
0042 
0043   //! This method is used to set the fields of the class
0044   //! ConnectPoint
0045   //! - aPoint               : A Coordinate point
0046   //! - aDisplaySymbol       : Display symbol Geometry
0047   //! - aTypeFlag            : Type of the connection
0048   //! - aFunctionFlag        : Function flag for the connection
0049   //! - aFunctionIdentifier  : Connection Point Function Identifier
0050   //! - anIdentifierTemplate : Connection Point Function Template
0051   //! - aFunctionName        : Connection Point Function Name
0052   //! - aFunctionTemplate    : Connection Point Function Template
0053   //! - aPointIdentifier     : Unique Connect Point Identifier
0054   //! - aFunctionCode        : Connect Point Function Code
0055   //! - aSwapFlag            : Connect Point Swap Flag
0056   //! - anOwnerSubfigure     : Pointer to the "Owner" Entity
0057   Standard_EXPORT void Init(const gp_XYZ&                                     aPoint,
0058                             const occ::handle<IGESData_IGESEntity>&           aDisplaySymbol,
0059                             const int                                         aTypeFlag,
0060                             const int                                         aFunctionFlag,
0061                             const occ::handle<TCollection_HAsciiString>&      aFunctionIdentifier,
0062                             const occ::handle<IGESGraph_TextDisplayTemplate>& anIdentifierTemplate,
0063                             const occ::handle<TCollection_HAsciiString>&      aFunctionName,
0064                             const occ::handle<IGESGraph_TextDisplayTemplate>& aFunctionTemplate,
0065                             const int                                         aPointIdentifier,
0066                             const int                                         aFunctionCode,
0067                             const int                                         aSwapFlag,
0068                             const occ::handle<IGESData_IGESEntity>&           anOwnerSubfigure);
0069 
0070   //! returns the coordinate of the connection point
0071   Standard_EXPORT gp_Pnt Point() const;
0072 
0073   //! returns the Transformed coordinate of the connection point
0074   Standard_EXPORT gp_Pnt TransformedPoint() const;
0075 
0076   //! returns True if Display symbol is specified
0077   //! else returns False
0078   Standard_EXPORT bool HasDisplaySymbol() const;
0079 
0080   //! if display symbol specified returns display symbol geometric entity
0081   //! else returns NULL Handle
0082   Standard_EXPORT occ::handle<IGESData_IGESEntity> DisplaySymbol() const;
0083 
0084   //! return value specifies a particular type of connection :
0085   //! Type Flag = 0   : Not Specified(default)
0086   //! 1   : Nonspecific logical  point of connection
0087   //! 2   : Nonspecific physical point of connection
0088   //! 101 : Logical component pin
0089   //! 102 : Logical part connector
0090   //! 103 : Logical offpage connector
0091   //! 104 : Logical global signal connector
0092   //! 201 : Physical PWA surface mount pin
0093   //! 202 : Physical PWA blind pin
0094   //! 203 : Physical PWA thru-pin
0095   //! 5001-9999 : Implementor defined.
0096   Standard_EXPORT int TypeFlag() const;
0097 
0098   //! returns Function Code that specifies a particular function for the
0099   //! ECO576 connection :
0100   //! e.g.,        Function Flag = 0 : Unspecified(default)
0101   //! = 1 : Electrical Signal
0102   //! = 2 : Fluid flow Signal
0103   Standard_EXPORT int FunctionFlag() const;
0104 
0105   //! return HAsciiString identifying Pin Number or Nozzle Label etc.
0106   Standard_EXPORT occ::handle<TCollection_HAsciiString> FunctionIdentifier() const;
0107 
0108   //! returns True if Text Display Template is specified for Identifier
0109   //! else returns False
0110   Standard_EXPORT bool HasIdentifierTemplate() const;
0111 
0112   //! if Text Display Template for the Function Identifier is defined,
0113   //! returns TestDisplayTemplate
0114   //! else returns NULL Handle
0115   Standard_EXPORT occ::handle<IGESGraph_TextDisplayTemplate> IdentifierTemplate() const;
0116 
0117   //! returns Connection Point Function Name
0118   Standard_EXPORT occ::handle<TCollection_HAsciiString> FunctionName() const;
0119 
0120   //! returns True if Text Display Template is specified for Function Name
0121   //! else returns False
0122   Standard_EXPORT bool HasFunctionTemplate() const;
0123 
0124   //! if Text Display Template for the Function Name is defined,
0125   //! returns TestDisplayTemplate
0126   //! else returns NULL Handle
0127   Standard_EXPORT occ::handle<IGESGraph_TextDisplayTemplate> FunctionTemplate() const;
0128 
0129   //! returns the Unique Connect Point Identifier
0130   Standard_EXPORT int PointIdentifier() const;
0131 
0132   //! returns the Connect Point Function Code
0133   Standard_EXPORT int FunctionCode() const;
0134 
0135   //! return value = 0 : Connect point may be swapped(default)
0136   //! = 1 : Connect point may not be swapped
0137   Standard_EXPORT bool SwapFlag() const;
0138 
0139   //! returns True if Network Subfigure Instance/Definition Entity
0140   //! is specified
0141   //! else returns False
0142   Standard_EXPORT bool HasOwnerSubfigure() const;
0143 
0144   //! returns "owner" Network Subfigure Instance Entity,
0145   //! or Network Subfigure Definition Entity, or NULL Handle.
0146   Standard_EXPORT occ::handle<IGESData_IGESEntity> OwnerSubfigure() const;
0147 
0148   DEFINE_STANDARD_RTTIEXT(IGESDraw_ConnectPoint, IGESData_IGESEntity)
0149 
0150 private:
0151   gp_XYZ                                     thePoint;
0152   occ::handle<IGESData_IGESEntity>           theDisplaySymbol;
0153   int                                        theTypeFlag;
0154   int                                        theFunctionFlag;
0155   occ::handle<TCollection_HAsciiString>      theFunctionIdentifier;
0156   occ::handle<IGESGraph_TextDisplayTemplate> theIdentifierTemplate;
0157   occ::handle<TCollection_HAsciiString>      theFunctionName;
0158   occ::handle<IGESGraph_TextDisplayTemplate> theFunctionTemplate;
0159   int                                        thePointIdentifier;
0160   int                                        theFunctionCode;
0161   bool                                       theSwapFlag;
0162   occ::handle<IGESData_IGESEntity>           theOwnerSubfigure;
0163 };
0164 
0165 #endif // _IGESDraw_ConnectPoint_HeaderFile