# ==============================================================================
# List of IFC structures needed by Assimp
# ==============================================================================
# use genentitylist.sh to update this list

# This machine-generated list is not complete, it lacks many intermediate
# classes in the inheritance hierarchy. Those are magically augmented by the
# code generator. Also, the names of all used entities need to be present
# in the source code for this to work.
absorbed_dose_measure_with_unit
absorbed_dose_unit
abstract_variable
acceleration_measure_with_unit
acceleration_unit
action;
action_assignment
action_directive;
action_method;
action_method_assignment
action_method_relationship;
action_method_role;
action_property;
action_property_representation;
action_relationship;
action_request_assignment
action_request_solution;
action_request_status;
action_status;
address;
advanced_brep_shape_representation
advanced_face
alternate_product_relationship;
amount_of_substance_measure_with_unit
amount_of_substance_unit
angle_direction_reference
angular_dimension
angular_location
angular_size
angularity_tolerance
annotation_curve_occurrence
annotation_fill_area
annotation_fill_area_occurrence
annotation_occurrence
annotation_occurrence_associativity
annotation_occurrence_relationship;
annotation_plane
annotation_subfigure_occurrence
annotation_symbol
annotation_symbol_occurrence
annotation_text
annotation_text_character
annotation_text_occurrence
apex
application_context;
application_context_element
application_protocol_definition;
applied_action_assignment
applied_action_method_assignment
applied_action_request_assignment
applied_approval_assignment
applied_attribute_classification_assignment
applied_certification_assignment
applied_classification_assignment
applied_contract_assignment
applied_date_and_time_assignment
applied_date_assignment
applied_document_reference
applied_document_usage_constraint_assignment
applied_effectivity_assignment
applied_event_occurrence_assignment
applied_external_identification_assignment
applied_group_assignment
applied_identification_assignment
applied_name_assignment
applied_organization_assignment
applied_organizational_project_assignment
applied_person_and_organization_assignment
applied_presented_item
applied_security_classification_assignment
applied_time_interval_assignment
applied_usage_right
approval;
approval_assignment
approval_date_time;
approval_person_organization;
approval_relationship;
approval_role;
approval_status;
area_in_set;
area_measure_with_unit
area_unit
assembly_component_usage
assembly_component_usage_substitute;
assigned_requirement
atomic_formula
attribute_assertion
attribute_classification_assignment
attribute_language_assignment
attribute_value_assignment
attribute_value_role;
auxiliary_geometric_representation_item
axis1_placement
axis2_placement_2d
axis2_placement_3d
b_spline_curve
b_spline_curve_with_knots
b_spline_surface
b_spline_surface_with_knots
back_chaining_rule
back_chaining_rule_body
background_colour
beveled_sheet_representation
bezier_curve
bezier_surface
binary_generic_expression
binary_numeric_expression
binary_representation_item
block
boolean_expression
boolean_literal
boolean_representation_item
boolean_result
boundary_curve
bounded_curve
bounded_pcurve
bounded_surface
bounded_surface_curve
box_domain
boxed_half_space
breakdown_context
breakdown_element_group_assignment
breakdown_element_realization
breakdown_element_usage
breakdown_of
brep_with_voids
bytes_representation_item
calendar_date
camera_image
camera_image_3d_with_scale
camera_model
camera_model_d3
camera_model_d3_multi_clipping
camera_model_d3_multi_clipping_intersection
camera_model_d3_multi_clipping_union
camera_model_d3_with_hlhsr
camera_model_with_light_sources
camera_usage
capacitance_measure_with_unit
capacitance_unit
cartesian_point
cartesian_transformation_operator
cartesian_transformation_operator_2d
cartesian_transformation_operator_3d
cc_design_approval
cc_design_certification
cc_design_contract
cc_design_date_and_time_assignment
cc_design_person_and_organization_assignment
cc_design_security_classification
cc_design_specification_reference
celsius_temperature_measure_with_unit
centre_of_symmetry
certification;
certification_assignment
certification_type;
change
change_request
character_glyph_font_usage;
character_glyph_style_outline
character_glyph_style_stroke
character_glyph_symbol
character_glyph_symbol_outline
character_glyph_symbol_stroke
characteristic_data_column_header
characteristic_data_column_header_link
characteristic_data_table_header
characteristic_data_table_header_decomposition
characteristic_type
characterized_class
characterized_object;
circle
circular_runout_tolerance
class
class_by_extension
class_by_intension
class_system
class_usage_effectivity_context_assignment
classification_assignment
classification_role;
closed_shell
coaxiality_tolerance
colour;
colour_rgb
colour_specification
common_datum
comparison_expression
complex_clause
complex_conjunctive_clause
complex_disjunctive_clause
complex_shelled_solid
composite_assembly_definition
composite_assembly_sequence_definition
composite_assembly_table
composite_curve
composite_curve_on_surface
composite_curve_segment
composite_material_designation
composite_shape_aspect
composite_sheet_representation
composite_text
composite_text_with_associated_curves
composite_text_with_blanking_box
composite_text_with_delineation
composite_text_with_extent
compound_representation_item
compound_shape_representation
concentricity_tolerance
concept_feature_operator;
concept_feature_relationship;
concept_feature_relationship_with_condition
conditional_concept_feature
conductance_measure_with_unit
conductance_unit
configurable_item
configuration_design;
configuration_effectivity
configuration_item;
configuration_item_hierarchical_relationship
configuration_item_relationship;
configuration_item_revision_sequence
configured_effectivity_assignment
configured_effectivity_context_assignment
conic
conical_stepped_hole_transition
conical_surface
connected_edge_set
connected_face_set
connected_face_sub_set
constructive_geometry_representation
constructive_geometry_representation_relationship
contact_ratio_representation
context_dependent_invisibility
context_dependent_over_riding_styled_item
context_dependent_shape_representation;
context_dependent_unit
contract;
contract_assignment
contract_relationship;
contract_type;
conversion_based_unit
coordinated_universal_time_offset;
csg_shape_representation
csg_solid
currency
currency_measure_with_unit
curve
curve_bounded_surface
curve_dimension
curve_replica
curve_style
curve_style_font
curve_style_font_and_scaling
curve_style_font_pattern
curve_style_rendering;
curve_swept_solid_shape_representation
cylindrical_surface
cylindricity_tolerance
data_environment;
date
date_and_time;
date_and_time_assignment
date_assignment
date_representation_item
date_role;
date_time_representation_item
date_time_role;
dated_effectivity
datum
datum_feature
datum_feature_callout
datum_reference;
datum_target
datum_target_callout
default_tolerance_table
default_tolerance_table_cell
defined_symbol
definitional_representation
definitional_representation_relationship
definitional_representation_relationship_with_same_context
degenerate_pcurve
degenerate_toroidal_surface
derived_shape_aspect
derived_unit
derived_unit_element;
description_attribute;
descriptive_representation_item
design_context
design_make_from_relationship
diameter_dimension
dielectric_constant_measure_with_unit
dimension_callout
dimension_callout_component_relationship
dimension_callout_relationship
dimension_curve
dimension_curve_directed_callout
dimension_curve_terminator
dimension_curve_terminator_to_projection_curve_associativity
dimension_pair
dimension_related_tolerance_zone_element;
dimension_text_associativity
dimensional_characteristic_representation;
dimensional_exponents;
dimensional_location
dimensional_location_with_path
dimensional_size
dimensional_size_with_path
directed_action
directed_dimensional_location
direction
document;
document_file
document_identifier
document_identifier_assignment
document_product_association;
document_product_equivalence
document_reference
document_relationship;
document_representation_type;
document_type;
document_usage_constraint;
document_usage_constraint_assignment
document_usage_role;
dose_equivalent_measure_with_unit
dose_equivalent_unit
double_offset_shelled_solid
draped_defined_transformation
draughting_annotation_occurrence
draughting_callout
draughting_callout_relationship;
draughting_elements
draughting_model
draughting_model_item_association
draughting_pre_defined_colour
draughting_pre_defined_curve_font
draughting_pre_defined_text_font
draughting_subfigure_representation
draughting_symbol_representation
draughting_text_literal_with_delineation
draughting_title;
drawing_definition;
drawing_revision
drawing_revision_sequence;
drawing_sheet_revision
drawing_sheet_revision_sequence
drawing_sheet_revision_usage
edge
edge_based_wireframe_model
edge_based_wireframe_shape_representation
edge_blended_solid
edge_curve
edge_loop
effectivity
effectivity_assignment
effectivity_context_assignment
effectivity_context_role;
effectivity_relationship;
electric_charge_measure_with_unit
electric_charge_unit
electric_current_measure_with_unit
electric_current_unit
electric_potential_measure_with_unit
electric_potential_unit
elementary_brep_shape_representation
elementary_surface
ellipse
energy_measure_with_unit
energy_unit
entity_assertion
enum_reference_prefix
environment;
evaluated_characteristic
evaluated_degenerate_pcurve
evaluation_product_definition
event_occurrence;
event_occurrence_assignment
event_occurrence_relationship;
event_occurrence_role;
exclusive_product_concept_feature_category
executed_action
expanded_uncertainty
explicit_procedural_geometric_representation_item_relationship
explicit_procedural_representation_item_relationship
explicit_procedural_representation_relationship
explicit_procedural_shape_representation_relationship
expression
expression_conversion_based_unit
extension
extent
external_class_library
external_identification_assignment
external_source;
external_source_relationship;
externally_defined_class
externally_defined_colour
externally_defined_context_dependent_unit
externally_defined_conversion_based_unit
externally_defined_currency
externally_defined_curve_font
externally_defined_dimension_definition
externally_defined_general_property
externally_defined_hatch_style
externally_defined_item;
externally_defined_item_relationship;
externally_defined_marker
externally_defined_picture_representation_item
externally_defined_representation_item
externally_defined_string
externally_defined_symbol
externally_defined_terminator_symbol
externally_defined_text_font
externally_defined_tile
externally_defined_tile_style
extruded_area_solid
extruded_face_solid
extruded_face_solid_with_draft_angle
extruded_face_solid_with_multiple_draft_angles
extruded_face_solid_with_trim_conditions
face
face_based_surface_model
face_bound
face_outer_bound
face_surface
faceted_brep
faceted_brep_shape_representation
fact_type
fill_area_style
fill_area_style_colour;
fill_area_style_hatching
fill_area_style_tile_coloured_region
fill_area_style_tile_curve_with_style
fill_area_style_tile_symbol_with_style
fill_area_style_tiles
flat_pattern_ply_representation_relationship
flatness_tolerance
force_measure_with_unit
force_unit
forward_chaining_rule
forward_chaining_rule_premise
founded_item
frequency_measure_with_unit
frequency_unit
func
functional_breakdown_context
functional_element_usage
functionally_defined_transformation;
general_material_property
general_property;
general_property_association;
general_property_relationship;
generic_character_glyph_symbol
generic_expression
generic_literal
generic_variable
geometric_alignment
geometric_curve_set
geometric_intersection
geometric_item_specific_usage
geometric_model_element_relationship
geometric_representation_context
geometric_representation_item
geometric_set
geometric_tolerance;
geometric_tolerance_relationship;
geometric_tolerance_with_datum_reference
geometric_tolerance_with_defined_unit
geometrical_tolerance_callout
geometrically_bounded_2d_wireframe_representation
geometrically_bounded_surface_shape_representation
geometrically_bounded_wireframe_shape_representation
global_assignment
global_uncertainty_assigned_context
global_unit_assigned_context
ground_fact
group;
group_assignment
group_relationship;
half_space_solid
hardness_representation
hidden_element_over_riding_styled_item
hyperbola
id_attribute;
identification_assignment
identification_role;
illuminance_measure_with_unit
illuminance_unit
included_text_block
inclusion_product_concept_feature
indirectly_selected_elements
indirectly_selected_shape_elements
inductance_measure_with_unit
inductance_unit
information_right
information_usage_right
instance_usage_context_assignment
instanced_feature
int_literal
integer_representation_item
intersection_curve
interval_expression
invisibility;
iso4217_currency
item_defined_transformation;
item_identified_representation_usage;
known_source
laid_defined_transformation
laminate_table
language
leader_curve
leader_directed_callout
leader_directed_dimension
leader_terminator
length_measure_with_unit
length_unit
light_source
light_source_ambient
light_source_directional
light_source_positional
light_source_spot
limits_and_fits;
line
line_profile_tolerance
linear_dimension
literal_conjunction
literal_disjunction
literal_number
local_time;
logical_literal
logical_representation_item
loop
loss_tangent_measure_with_unit
lot_effectivity
luminous_flux_measure_with_unit
luminous_flux_unit
luminous_intensity_measure_with_unit
luminous_intensity_unit
magnetic_flux_density_measure_with_unit
magnetic_flux_density_unit
magnetic_flux_measure_with_unit
magnetic_flux_unit
make_from_usage_option
manifold_solid_brep
manifold_subsurface_shape_representation
manifold_surface_shape_representation
mapped_item
mass_measure_with_unit
mass_unit
material_designation;
material_designation_characterization;
material_property
material_property_representation
measure_qualification;
measure_representation_item
measure_with_unit
mechanical_context
mechanical_design_and_draughting_relationship
mechanical_design_geometric_presentation_area
mechanical_design_geometric_presentation_representation
mechanical_design_presentation_representation_with_draughting
mechanical_design_shaded_presentation_area
mechanical_design_shaded_presentation_representation
min_and_major_ply_orientation_basis
modified_geometric_tolerance
modified_solid
modified_solid_with_placed_configuration
moments_of_inertia_representation
multi_language_attribute_assignment
multiple_arity_boolean_expression
multiple_arity_generic_expression
multiple_arity_numeric_expression
name_assignment
name_attribute;
named_unit
next_assembly_usage_occurrence
non_manifold_surface_shape_representation
null_representation_item
numeric_expression
object_role;
offset_curve_2d
offset_curve_3d
offset_surface
one_direction_repeat_factor
open_shell
ordinal_date
ordinate_dimension
organization;
organization_assignment
organization_relationship;
organization_role;
organizational_address
organizational_project;
organizational_project_assignment
organizational_project_relationship;
organizational_project_role;
oriented_closed_shell
oriented_edge
oriented_face
oriented_open_shell
oriented_path
oriented_surface
outer_boundary_curve
over_riding_styled_item
package_product_concept_feature
parabola
parallel_offset
parallelism_tolerance
parametric_representation_context
part_laminate_table
partial_document_with_structured_text_representation_assignment
path
pcurve
percentage_laminate_definition
percentage_laminate_table
percentage_ply_definition
perpendicular_to
perpendicularity_tolerance
person;
person_and_organization;
person_and_organization_address
person_and_organization_assignment
person_and_organization_role;
personal_address
physical_breakdown_context
physical_element_usage
picture_representation
picture_representation_item
placed_datum_target_feature
placed_feature
placement
planar_box
planar_extent
plane
plane_angle_measure_with_unit
plane_angle_unit
plus_minus_tolerance;
ply_laminate_definition
ply_laminate_sequence_definition
ply_laminate_table
point
point_and_vector
point_on_curve
point_on_surface
point_path
point_replica
point_style
polar_complex_number_literal
poly_loop
polyline
position_tolerance
positioned_sketch
power_measure_with_unit
power_unit
pre_defined_colour
pre_defined_curve_font
pre_defined_dimension_symbol
pre_defined_geometrical_tolerance_symbol
pre_defined_item;
pre_defined_marker
pre_defined_point_marker_symbol
pre_defined_surface_condition_symbol
pre_defined_surface_side_style
pre_defined_symbol
pre_defined_terminator_symbol
pre_defined_text_font
pre_defined_tile
precision_qualifier;
predefined_picture_representation_item
presentation_area
presentation_layer_assignment;
presentation_representation
presentation_set;
presentation_size;
presentation_style_assignment
presentation_style_by_context
presentation_view
presented_item
presented_item_representation;
pressure_measure_with_unit
pressure_unit
procedural_representation
procedural_representation_sequence
procedural_shape_representation
procedural_shape_representation_sequence
product;
product_category;
product_class
product_concept;
product_concept_context
product_concept_feature;
product_concept_feature_association;
product_concept_feature_category
product_concept_feature_category_usage
product_concept_relationship;
product_context
product_definition
product_definition_context
product_definition_context_association;
product_definition_context_role;
product_definition_effectivity
product_definition_element_relationship
product_definition_formation;
product_definition_formation_relationship;
product_definition_formation_with_specified_source
product_definition_group_assignment
product_definition_occurrence_relationship;
product_definition_relationship;
product_definition_shape
product_definition_substitute;
product_definition_usage
product_definition_with_associated_documents
product_identification
product_material_composition_relationship
product_related_product_category
product_specification
projected_zone_definition
projection_curve
projection_directed_callout
promissory_usage_occurrence
property_definition;
property_definition_relationship;
property_definition_representation;
qualified_representation_item
qualitative_uncertainty
quantified_assembly_component_usage
quasi_uniform_curve
quasi_uniform_surface
radioactivity_measure_with_unit
radioactivity_unit
radius_dimension
range_characteristic
ratio_measure_with_unit
ratio_unit
rational_b_spline_curve
rational_b_spline_surface
rational_representation_item
real_literal
real_representation_item
rectangular_composite_surface
rectangular_trimmed_surface
referenced_modified_datum
relative_event_occurrence
rep_item_group
reparametrised_composite_curve_segment
representation;
representation_context;
representation_item
representation_item_relationship;
representation_map;
representation_relationship;
representation_relationship_with_transformation
requirement_assigned_object
requirement_assignment
requirement_source
requirement_view_definition_relationship
resistance_measure_with_unit
resistance_unit
revolved_area_solid
revolved_face_solid
revolved_face_solid_with_trim_conditions
right_angular_wedge
right_circular_cone
right_circular_cylinder
right_to_usage_association
role_association;
roundness_tolerance
row_representation_item
row_value
row_variable
rule_action
rule_condition
rule_definition
rule_set
rule_set_group
rule_software_definition
rule_superseded_assignment
rule_supersedence
ruled_surface_swept_area_solid
runout_zone_definition
runout_zone_orientation;
runout_zone_orientation_reference_direction
satisfied_requirement
satisfies_requirement
satisfying_item
scalar_variable
scattering_parameter
sculptured_solid
seam_curve
security_classification;
security_classification_assignment
security_classification_level;
serial_numbered_effectivity
shape_aspect;
shape_aspect_associativity
shape_aspect_deriving_relationship
shape_aspect_relationship;
shape_definition_representation
shape_dimension_representation
shape_feature_definition
shape_representation
shape_representation_relationship
shape_representation_with_parameters
shell_based_surface_model
shell_based_wireframe_model
shell_based_wireframe_shape_representation
shelled_solid
si_absorbed_dose_unit
si_capacitance_unit
si_conductance_unit
si_dose_equivalent_unit
si_electric_charge_unit
si_electric_potential_unit
si_energy_unit
si_force_unit
si_frequency_unit
si_illuminance_unit
si_inductance_unit
si_magnetic_flux_density_unit
si_magnetic_flux_unit
si_power_unit
si_pressure_unit
si_radioactivity_unit
si_resistance_unit
si_unit
simple_boolean_expression
simple_clause
simple_generic_expression
simple_numeric_expression
slash_expression
smeared_material_definition
solid_angle_measure_with_unit
solid_angle_unit
solid_curve_font
solid_model
solid_replica
solid_with_angle_based_chamfer
solid_with_chamfered_edges
solid_with_circular_pattern
solid_with_circular_pocket
solid_with_circular_protrusion
solid_with_conical_bottom_round_hole
solid_with_constant_radius_edge_blend
solid_with_curved_slot
solid_with_depression
solid_with_double_offset_chamfer
solid_with_flat_bottom_round_hole
solid_with_general_pocket
solid_with_general_protrusion
solid_with_groove
solid_with_hole
solid_with_incomplete_circular_pattern
solid_with_incomplete_rectangular_pattern
solid_with_pocket
solid_with_protrusion
solid_with_rectangular_pattern
solid_with_rectangular_pocket
solid_with_rectangular_protrusion
solid_with_shape_element_pattern
solid_with_single_offset_chamfer
solid_with_slot
solid_with_spherical_bottom_round_hole
solid_with_stepped_round_hole
solid_with_stepped_round_hole_and_conical_transitions
solid_with_straight_slot
solid_with_tee_section_slot
solid_with_through_depression
solid_with_trapezoidal_section_slot
solid_with_variable_radius_edge_blend
source_for_requirement
sourced_requirement
specification_definition
specified_higher_usage_occurrence
sphere
spherical_surface
standard_uncertainty
start_request
start_work
straightness_tolerance
structured_dimension_callout
structured_text_composition
structured_text_representation
styled_item
subedge
subface
supplied_part_relationship
surface
surface_condition_callout
surface_curve
surface_curve_swept_area_solid
surface_of_linear_extrusion
surface_of_revolution
surface_patch
surface_profile_tolerance
surface_rendering_properties;
surface_replica
surface_side_style
surface_style_boundary
surface_style_control_grid
surface_style_fill_area
surface_style_parameter_line
surface_style_reflectance_ambient;
surface_style_reflectance_ambient_diffuse
surface_style_reflectance_ambient_diffuse_specular
surface_style_rendering;
surface_style_rendering_with_properties
surface_style_segmentation_curve
surface_style_silhouette
surface_style_transparent;
surface_style_usage
surface_texture_representation
surfaced_open_shell
swept_area_solid
swept_disk_solid
swept_face_solid
swept_surface
symbol
symbol_colour;
symbol_representation
symbol_representation_map
symbol_style
symbol_target
symmetric_shape_aspect
symmetry_tolerance
table_representation_item
tactile_appearance_representation
tagged_text_format
tagged_text_item
tangent
terminator_symbol
text_font;
text_font_family;
text_font_in_family;
text_literal
text_literal_with_associated_curves
text_literal_with_blanking_box
text_literal_with_delineation
text_literal_with_extent
text_string_representation
text_style
text_style_for_defined_font;
text_style_with_box_characteristics
text_style_with_mirror
text_style_with_spacing
thermal_resistance_measure_with_unit
thermal_resistance_unit
thermodynamic_temperature_measure_with_unit
thermodynamic_temperature_unit
thickened_face_solid
thickness_laminate_definition
thickness_laminate_table
time_interval;
time_interval_assignment
time_interval_based_effectivity
time_interval_relationship;
time_interval_role;
time_interval_with_bounds
time_measure_with_unit
time_unit
tolerance_value;
tolerance_zone
tolerance_zone_definition
tolerance_zone_form;
topological_representation_item
toroidal_surface
torus
total_runout_tolerance
track_blended_solid
track_blended_solid_with_end_conditions
transformation_with_derived_angle
trimmed_curve
two_direction_repeat_factor
type_qualifier;
unary_generic_expression
unary_numeric_expression
uncertainty_assigned_representation
uncertainty_measure_with_unit
uncertainty_qualifier
uniform_curve
uniform_resource_identifier
uniform_surface
usage_association
user_defined_curve_font
user_defined_marker
user_defined_terminator_symbol
user_selected_elements
user_selected_shape_elements
value_range
value_representation_item
variable_semantics
variational_representation_item
vector
vector_style
velocity_measure_with_unit
velocity_unit
versioned_action_request;
vertex
vertex_loop
vertex_point
vertex_shell
view_volume
visual_appearance_representation
volume_measure_with_unit
volume_unit
week_of_year_and_day_date
wire_shell
year_month
zone_structural_makeup
