File indexing completed on 2025-01-18 10:05:06
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _StepData_PDescr_HeaderFile
0018 #define _StepData_PDescr_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <TCollection_AsciiString.hxx>
0024 #include <Standard_Integer.hxx>
0025 #include <StepData_EnumTool.hxx>
0026 #include <Standard_Transient.hxx>
0027 #include <Standard_CString.hxx>
0028 class StepData_EDescr;
0029 class StepData_Field;
0030 class Interface_Check;
0031
0032
0033 class StepData_PDescr;
0034 DEFINE_STANDARD_HANDLE(StepData_PDescr, Standard_Transient)
0035
0036
0037
0038
0039
0040
0041 class StepData_PDescr : public Standard_Transient
0042 {
0043
0044 public:
0045
0046
0047 Standard_EXPORT StepData_PDescr();
0048
0049 Standard_EXPORT void SetName (const Standard_CString name);
0050
0051 Standard_EXPORT Standard_CString Name() const;
0052
0053
0054
0055 Standard_EXPORT void SetSelect();
0056
0057
0058 Standard_EXPORT void AddMember (const Handle(StepData_PDescr)& member);
0059
0060
0061
0062 Standard_EXPORT void SetMemberName (const Standard_CString memname);
0063
0064
0065 Standard_EXPORT void SetInteger();
0066
0067
0068 Standard_EXPORT void SetReal();
0069
0070
0071 Standard_EXPORT void SetString();
0072
0073
0074 Standard_EXPORT void SetBoolean();
0075
0076
0077 Standard_EXPORT void SetLogical();
0078
0079
0080
0081 Standard_EXPORT void SetEnum();
0082
0083
0084 Standard_EXPORT void AddEnumDef (const Standard_CString enumdef);
0085
0086
0087 Standard_EXPORT void SetType (const Handle(Standard_Type)& atype);
0088
0089
0090
0091 Standard_EXPORT void SetDescr (const Standard_CString dscnam);
0092
0093
0094
0095
0096
0097 Standard_EXPORT void AddArity (const Standard_Integer arity = 1);
0098
0099
0100
0101
0102
0103 Standard_EXPORT void SetArity (const Standard_Integer arity = 1);
0104
0105
0106
0107 Standard_EXPORT void SetFrom (const Handle(StepData_PDescr)& other);
0108
0109
0110 Standard_EXPORT void SetOptional (const Standard_Boolean opt = Standard_True);
0111
0112
0113 Standard_EXPORT void SetDerived (const Standard_Boolean der = Standard_True);
0114
0115
0116
0117 Standard_EXPORT void SetField (const Standard_CString name, const Standard_Integer rank);
0118
0119
0120 Standard_EXPORT Standard_Boolean IsSelect() const;
0121
0122
0123
0124
0125
0126
0127
0128
0129
0130 Standard_EXPORT Handle(StepData_PDescr) Member (const Standard_CString name) const;
0131
0132
0133 Standard_EXPORT Standard_Boolean IsInteger() const;
0134
0135
0136 Standard_EXPORT Standard_Boolean IsReal() const;
0137
0138
0139 Standard_EXPORT Standard_Boolean IsString() const;
0140
0141
0142 Standard_EXPORT Standard_Boolean IsBoolean() const;
0143
0144
0145 Standard_EXPORT Standard_Boolean IsLogical() const;
0146
0147
0148
0149
0150 Standard_EXPORT Standard_Boolean IsEnum() const;
0151
0152
0153 Standard_EXPORT Standard_Integer EnumMax() const;
0154
0155
0156
0157
0158 Standard_EXPORT Standard_Integer EnumValue (const Standard_CString name) const;
0159
0160
0161
0162 Standard_EXPORT Standard_CString EnumText (const Standard_Integer val) const;
0163
0164
0165 Standard_EXPORT Standard_Boolean IsEntity() const;
0166
0167
0168
0169 Standard_EXPORT Standard_Boolean IsType (const Handle(Standard_Type)& atype) const;
0170
0171
0172
0173 Standard_EXPORT Handle(Standard_Type) Type() const;
0174
0175
0176
0177
0178 Standard_EXPORT Standard_Boolean IsDescr (const Handle(StepData_EDescr)& descr) const;
0179
0180
0181
0182 Standard_EXPORT Standard_CString DescrName() const;
0183
0184
0185 Standard_EXPORT Standard_Integer Arity() const;
0186
0187
0188
0189
0190
0191
0192 Standard_EXPORT Handle(StepData_PDescr) Simple() const;
0193
0194
0195 Standard_EXPORT Standard_Boolean IsOptional() const;
0196
0197
0198 Standard_EXPORT Standard_Boolean IsDerived() const;
0199
0200
0201 Standard_EXPORT Standard_Boolean IsField() const;
0202
0203 Standard_EXPORT Standard_CString FieldName() const;
0204
0205 Standard_EXPORT Standard_Integer FieldRank() const;
0206
0207
0208
0209 Standard_EXPORT virtual void Check (const StepData_Field& afild, Handle(Interface_Check)& ach) const;
0210
0211
0212
0213
0214 DEFINE_STANDARD_RTTIEXT(StepData_PDescr,Standard_Transient)
0215
0216 protected:
0217
0218
0219
0220
0221 private:
0222
0223
0224 Standard_EXPORT Standard_Integer Kind() const;
0225
0226 TCollection_AsciiString thename;
0227 Standard_Integer thesel;
0228 TCollection_AsciiString thesnam;
0229 Handle(StepData_PDescr) thenext;
0230 Standard_Integer thekind;
0231 StepData_EnumTool theenum;
0232 Handle(Standard_Type) thetype;
0233 TCollection_AsciiString thednam;
0234 Standard_Integer thearit;
0235 Handle(StepData_PDescr) thefrom;
0236 Standard_Boolean theopt;
0237 Standard_Boolean theder;
0238 TCollection_AsciiString thefnam;
0239 Standard_Integer thefnum;
0240
0241
0242 };
0243
0244
0245
0246
0247
0248
0249
0250 #endif