dlubal.api 2.10.8__tar.gz → 2.10.10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of dlubal.api might be problematic. Click here for more details.
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/PKG-INFO +4 -4
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/README.md +3 -3
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/dlubal.api.egg-info/PKG-INFO +4 -4
- dlubal_api-2.10.10/dlubal.api.egg-info/SOURCES.txt +12 -0
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/setup.py +1 -1
- dlubal_api-2.10.8/dlubal/api/common/__init__.py +0 -3
- dlubal_api-2.10.8/dlubal/api/common/common_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/common/common_pb2.pyi +0 -57
- dlubal_api-2.10.8/dlubal/api/common/connection.py +0 -248
- dlubal_api-2.10.8/dlubal/api/common/exceptions.py +0 -12
- dlubal_api-2.10.8/dlubal/api/common/model_id_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/common/model_id_pb2.pyi +0 -17
- dlubal_api-2.10.8/dlubal/api/common/table.py +0 -36
- dlubal_api-2.10.8/dlubal/api/common/table_data_pb2.py +0 -39
- dlubal_api-2.10.8/dlubal/api/common/table_data_pb2.pyi +0 -21
- dlubal_api-2.10.8/dlubal/api/rfem/__init__.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/all_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/all_pb2.pyi +0 -9
- dlubal_api-2.10.8/dlubal/api/rfem/aluminum_design_objects/__init__.py +0 -2
- dlubal_api-2.10.8/dlubal/api/rfem/aluminum_design_objects/aluminum_design_sls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/aluminum_design_objects/aluminum_design_sls_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/aluminum_design_objects/aluminum_design_uls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/aluminum_design_objects/aluminum_design_uls_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/application.py +0 -549
- dlubal_api-2.10.8/dlubal/api/rfem/application_pb2.py +0 -89
- dlubal_api-2.10.8/dlubal/api/rfem/application_pb2.pyi +0 -243
- dlubal_api-2.10.8/dlubal/api/rfem/application_pb2_grpc.py +0 -1424
- dlubal_api-2.10.8/dlubal/api/rfem/base_data/__init__.py +0 -1
- dlubal_api-2.10.8/dlubal/api/rfem/base_data/terrain_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/base_data/terrain_pb2.pyi +0 -67
- dlubal_api-2.10.8/dlubal/api/rfem/base_data_pb2.py +0 -116
- dlubal_api-2.10.8/dlubal/api/rfem/base_data_pb2.pyi +0 -2638
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/__init__.py +0 -4
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/building_story_pb2.py +0 -54
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/building_story_pb2.pyi +0 -142
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/deep_beam_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/deep_beam_pb2.pyi +0 -94
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/floor_set_pb2.py +0 -39
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/floor_set_pb2.pyi +0 -58
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/shear_wall_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/building_model/shear_wall_pb2.pyi +0 -90
- dlubal_api-2.10.8/dlubal/api/rfem/calculation_diagrams/__init__.py +0 -1
- dlubal_api-2.10.8/dlubal/api/rfem/calculation_diagrams/calculation_diagram_pb2.py +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/calculation_diagrams/calculation_diagram_pb2.pyi +0 -1706
- dlubal_api-2.10.8/dlubal/api/rfem/concrete_design_objects/__init__.py +0 -2
- dlubal_api-2.10.8/dlubal/api/rfem/concrete_design_objects/concrete_design_sls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/concrete_design_objects/concrete_design_sls_configuration_pb2.pyi +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/concrete_design_objects/concrete_design_uls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/concrete_design_objects/concrete_design_uls_configuration_pb2.pyi +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/construction_stages/__init__.py +0 -1
- dlubal_api-2.10.8/dlubal/api/rfem/construction_stages/construction_stage_pb2.py +0 -70
- dlubal_api-2.10.8/dlubal/api/rfem/construction_stages/construction_stage_pb2.pyi +0 -439
- dlubal_api-2.10.8/dlubal/api/rfem/dynamic_loads/__init__.py +0 -2
- dlubal_api-2.10.8/dlubal/api/rfem/dynamic_loads/accelerogram_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/dynamic_loads/accelerogram_pb2.pyi +0 -67
- dlubal_api-2.10.8/dlubal/api/rfem/dynamic_loads/response_spectrum_pb2.py +0 -44
- dlubal_api-2.10.8/dlubal/api/rfem/dynamic_loads/response_spectrum_pb2.pyi +0 -89
- dlubal_api-2.10.8/dlubal/api/rfem/geotechnical_analysis/__init__.py +0 -2
- dlubal_api-2.10.8/dlubal/api/rfem/geotechnical_analysis/borehole_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/geotechnical_analysis/borehole_pb2.pyi +0 -70
- dlubal_api-2.10.8/dlubal/api/rfem/geotechnical_analysis/soil_massif_pb2.py +0 -47
- dlubal_api-2.10.8/dlubal/api/rfem/geotechnical_analysis/soil_massif_pb2.pyi +0 -114
- dlubal_api-2.10.8/dlubal/api/rfem/global_parameters/__init__.py +0 -1
- dlubal_api-2.10.8/dlubal/api/rfem/global_parameters/global_parameter_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/global_parameters/global_parameter_pb2.pyi +0 -292
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/__init__.py +0 -10
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/building_grid_pb2.py +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/building_grid_pb2.pyi +0 -211
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/clipping_box_pb2.py +0 -37
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/clipping_box_pb2.pyi +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/clipping_plane_pb2.py +0 -45
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/clipping_plane_pb2.pyi +0 -113
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/coordinate_system_pb2.py +0 -41
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/coordinate_system_pb2.pyi +0 -91
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/dimension_pb2.py +0 -73
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/dimension_pb2.pyi +0 -350
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/dxf_file_model_object_pb2.py +0 -41
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/dxf_file_model_object_pb2.pyi +0 -119
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/dxf_model_object_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/dxf_model_object_pb2.pyi +0 -15
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/note_pb2.py +0 -45
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/note_pb2.pyi +0 -125
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/object_snap_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/object_snap_pb2.pyi +0 -84
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/visual_object_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/guide_objects/visual_object_pb2.pyi +0 -127
- dlubal_api-2.10.8/dlubal/api/rfem/ifc_objects/__init__.py +0 -2
- dlubal_api-2.10.8/dlubal/api/rfem/ifc_objects/ifc_file_model_object_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/ifc_objects/ifc_file_model_object_pb2.pyi +0 -90
- dlubal_api-2.10.8/dlubal/api/rfem/ifc_objects/ifc_model_object_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/ifc_objects/ifc_model_object_pb2.pyi +0 -19
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/__init__.py +0 -5
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/imperfection_case_pb2.py +0 -56
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/imperfection_case_pb2.pyi +0 -197
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/member_imperfection_pb2.py +0 -50
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/member_imperfection_pb2.pyi +0 -201
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/member_set_imperfection_pb2.py +0 -50
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/member_set_imperfection_pb2.pyi +0 -199
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/surface_imperfection_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/surface_imperfection_pb2.pyi +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/surface_set_imperfection_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/imperfections/surface_set_imperfection_pb2.pyi +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/import_export/__init__.py +0 -1
- dlubal_api-2.10.8/dlubal/api/rfem/import_export/import_attributes_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/import_export/import_attributes_pb2.pyi +0 -9
- dlubal_api-2.10.8/dlubal/api/rfem/load_wizards/__init__.py +0 -2
- dlubal_api-2.10.8/dlubal/api/rfem/load_wizards/wind_profile_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/load_wizards/wind_profile_pb2.pyi +0 -755
- dlubal_api-2.10.8/dlubal/api/rfem/load_wizards/wind_simulation_pb2.py +0 -55
- dlubal_api-2.10.8/dlubal/api/rfem/load_wizards/wind_simulation_pb2.pyi +0 -146
- dlubal_api-2.10.8/dlubal/api/rfem/loading/__init__.py +0 -15
- dlubal_api-2.10.8/dlubal/api/rfem/loading/action_combination_pb2.py +0 -48
- dlubal_api-2.10.8/dlubal/api/rfem/loading/action_combination_pb2.pyi +0 -153
- dlubal_api-2.10.8/dlubal/api/rfem/loading/action_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/loading/action_pb2.pyi +0 -681
- dlubal_api-2.10.8/dlubal/api/rfem/loading/combination_wizard_pb2.py +0 -45
- dlubal_api-2.10.8/dlubal/api/rfem/loading/combination_wizard_pb2.pyi +0 -88
- dlubal_api-2.10.8/dlubal/api/rfem/loading/design_situation_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/loading/design_situation_pb2.pyi +0 -1162
- dlubal_api-2.10.8/dlubal/api/rfem/loading/load_case_pb2.py +0 -90
- dlubal_api-2.10.8/dlubal/api/rfem/loading/load_case_pb2.pyi +0 -1221
- dlubal_api-2.10.8/dlubal/api/rfem/loading/load_combination_pb2.py +0 -61
- dlubal_api-2.10.8/dlubal/api/rfem/loading/load_combination_pb2.pyi +0 -358
- dlubal_api-2.10.8/dlubal/api/rfem/loading/modal_analysis_settings_pb2.py +0 -52
- dlubal_api-2.10.8/dlubal/api/rfem/loading/modal_analysis_settings_pb2.pyi +0 -155
- dlubal_api-2.10.8/dlubal/api/rfem/loading/optimization_settings_pb2.py +0 -44
- dlubal_api-2.10.8/dlubal/api/rfem/loading/optimization_settings_pb2.pyi +0 -91
- dlubal_api-2.10.8/dlubal/api/rfem/loading/pushover_analysis_settings_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/loading/pushover_analysis_settings_pb2.pyi +0 -50
- dlubal_api-2.10.8/dlubal/api/rfem/loading/relationship_between_load_cases_pb2.py +0 -44
- dlubal_api-2.10.8/dlubal/api/rfem/loading/relationship_between_load_cases_pb2.pyi +0 -64
- dlubal_api-2.10.8/dlubal/api/rfem/loading/result_combination_pb2.py +0 -55
- dlubal_api-2.10.8/dlubal/api/rfem/loading/result_combination_pb2.pyi +0 -284
- dlubal_api-2.10.8/dlubal/api/rfem/loading/spectral_analysis_settings_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/loading/spectral_analysis_settings_pb2.pyi +0 -82
- dlubal_api-2.10.8/dlubal/api/rfem/loading/stability_analysis_settings_pb2.py +0 -44
- dlubal_api-2.10.8/dlubal/api/rfem/loading/stability_analysis_settings_pb2.pyi +0 -114
- dlubal_api-2.10.8/dlubal/api/rfem/loading/static_analysis_settings_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/loading/static_analysis_settings_pb2.pyi +0 -154
- dlubal_api-2.10.8/dlubal/api/rfem/loading/wind_simulation_analysis_settings_pb2.py +0 -48
- dlubal_api-2.10.8/dlubal/api/rfem/loading/wind_simulation_analysis_settings_pb2.pyi +0 -150
- dlubal_api-2.10.8/dlubal/api/rfem/loads/__init__.py +0 -17
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_circular_load_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_circular_load_pb2.pyi +0 -97
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_concentrated_load_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_concentrated_load_pb2.pyi +0 -81
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_line_load_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_line_load_pb2.pyi +0 -101
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_polygon_load_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_polygon_load_pb2.pyi +0 -123
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_rectangular_load_pb2.py +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/loads/free_rectangular_load_pb2.pyi +0 -194
- dlubal_api-2.10.8/dlubal/api/rfem/loads/imposed_line_deformation_pb2.py +0 -37
- dlubal_api-2.10.8/dlubal/api/rfem/loads/imposed_line_deformation_pb2.pyi +0 -47
- dlubal_api-2.10.8/dlubal/api/rfem/loads/imposed_nodal_deformation_pb2.py +0 -37
- dlubal_api-2.10.8/dlubal/api/rfem/loads/imposed_nodal_deformation_pb2.pyi +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/loads/line_load_pb2.py +0 -49
- dlubal_api-2.10.8/dlubal/api/rfem/loads/line_load_pb2.pyi +0 -168
- dlubal_api-2.10.8/dlubal/api/rfem/loads/line_set_load_pb2.py +0 -49
- dlubal_api-2.10.8/dlubal/api/rfem/loads/line_set_load_pb2.pyi +0 -168
- dlubal_api-2.10.8/dlubal/api/rfem/loads/member_load_pb2.py +0 -69
- dlubal_api-2.10.8/dlubal/api/rfem/loads/member_load_pb2.pyi +0 -402
- dlubal_api-2.10.8/dlubal/api/rfem/loads/member_set_load_pb2.py +0 -69
- dlubal_api-2.10.8/dlubal/api/rfem/loads/member_set_load_pb2.pyi +0 -400
- dlubal_api-2.10.8/dlubal/api/rfem/loads/nodal_load_pb2.py +0 -47
- dlubal_api-2.10.8/dlubal/api/rfem/loads/nodal_load_pb2.pyi +0 -204
- dlubal_api-2.10.8/dlubal/api/rfem/loads/opening_load_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/loads/opening_load_pb2.pyi +0 -82
- dlubal_api-2.10.8/dlubal/api/rfem/loads/solid_load_pb2.py +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/loads/solid_load_pb2.pyi +0 -172
- dlubal_api-2.10.8/dlubal/api/rfem/loads/solid_set_load_pb2.py +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/loads/solid_set_load_pb2.pyi +0 -172
- dlubal_api-2.10.8/dlubal/api/rfem/loads/surface_load_pb2.py +0 -59
- dlubal_api-2.10.8/dlubal/api/rfem/loads/surface_load_pb2.pyi +0 -294
- dlubal_api-2.10.8/dlubal/api/rfem/loads/surface_set_load_pb2.py +0 -59
- dlubal_api-2.10.8/dlubal/api/rfem/loads/surface_set_load_pb2.pyi +0 -294
- dlubal_api-2.10.8/dlubal/api/rfem/object_id_pb2.py +0 -39
- dlubal_api-2.10.8/dlubal/api/rfem/object_id_pb2.pyi +0 -25
- dlubal_api-2.10.8/dlubal/api/rfem/object_type_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/object_type_pb2.pyi +0 -300
- dlubal_api-2.10.8/dlubal/api/rfem/packing.py +0 -121
- dlubal_api-2.10.8/dlubal/api/rfem/result_objects/__init__.py +0 -1
- dlubal_api-2.10.8/dlubal/api/rfem/result_objects/result_section_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/result_objects/result_section_pb2.pyi +0 -116
- dlubal_api-2.10.8/dlubal/api/rfem/results/__init__.py +0 -4
- dlubal_api-2.10.8/dlubal/api/rfem/results/result_table_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/results/result_table_pb2.pyi +0 -70
- dlubal_api-2.10.8/dlubal/api/rfem/results/results_id_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/results/results_id_pb2.pyi +0 -32
- dlubal_api-2.10.8/dlubal/api/rfem/results/results_query_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/results/results_query_pb2.pyi +0 -26
- dlubal_api-2.10.8/dlubal/api/rfem/results/results_type_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/results/results_type_pb2.pyi +0 -112
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/__init__.py +0 -4
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_fr_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_fr_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_seismic_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_seismic_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_sls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_sls_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_uls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/steel_design_objects/steel_design_uls_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/__init__.py +0 -9
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/block_pb2.py +0 -51
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/block_pb2.pyi +0 -173
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/intersection_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/intersection_pb2.pyi +0 -26
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/line_release_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/line_release_pb2.pyi +0 -67
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/nodal_release_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/nodal_release_pb2.pyi +0 -45
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/rigid_link_pb2.py +0 -41
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/rigid_link_pb2.pyi +0 -102
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/structure_modification_pb2.py +0 -78
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/structure_modification_pb2.pyi +0 -353
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/surface_release_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/surface_release_pb2.pyi +0 -49
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/surface_results_adjustment_pb2.py +0 -61
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/surface_results_adjustment_pb2.pyi +0 -165
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/surfaces_contact_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/structure_advanced/surfaces_contact_pb2.pyi +0 -24
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/__init__.py +0 -15
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/line_pb2.py +0 -63
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/line_pb2.pyi +0 -362
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/line_set_pb2.py +0 -39
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/line_set_pb2.pyi +0 -52
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/material_pb2.py +0 -142
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/material_pb2.pyi +0 -1481
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_pb2.py +0 -171
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_pb2.pyi +0 -1861
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_representative_pb2.py +0 -253
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_representative_pb2.pyi +0 -3079
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_set_pb2.py +0 -137
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_set_pb2.pyi +0 -1460
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_set_representative_pb2.py +0 -353
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/member_set_representative_pb2.pyi +0 -4535
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/node_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/node_pb2.pyi +0 -139
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/opening_pb2.py +0 -37
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/opening_pb2.pyi +0 -41
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/section_pb2.py +0 -68
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/section_pb2.pyi +0 -1956
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/solid_pb2.py +0 -53
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/solid_pb2.pyi +0 -204
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/solid_set_pb2.py +0 -39
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/solid_set_pb2.pyi +0 -54
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/surface_pb2.py +0 -69
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/surface_pb2.pyi +0 -469
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/surface_set_pb2.py +0 -49
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/surface_set_pb2.pyi +0 -170
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/thickness_pb2.py +0 -64
- dlubal_api-2.10.8/dlubal/api/rfem/structure_core/thickness_pb2.pyi +0 -444
- dlubal_api-2.10.8/dlubal/api/rfem/timber_design_objects/__init__.py +0 -3
- dlubal_api-2.10.8/dlubal/api/rfem/timber_design_objects/timber_design_fr_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/timber_design_objects/timber_design_fr_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/timber_design_objects/timber_design_sls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/timber_design_objects/timber_design_sls_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/timber_design_objects/timber_design_uls_configuration_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/timber_design_objects/timber_design_uls_configuration_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_aluminum_design/__init__.py +0 -3
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_aluminum_design/aluminum_effective_lengths_pb2.py +0 -79
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_aluminum_design/aluminum_effective_lengths_pb2.pyi +0 -328
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_aluminum_design/aluminum_member_local_section_reduction_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_aluminum_design/aluminum_member_local_section_reduction_pb2.pyi +0 -119
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_aluminum_design/aluminum_member_transverse_weld_pb2.py +0 -48
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_aluminum_design/aluminum_member_transverse_weld_pb2.pyi +0 -101
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/__init__.py +0 -5
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/concrete_durability_pb2.py +0 -68
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/concrete_durability_pb2.pyi +0 -253
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/concrete_effective_lengths_pb2.py +0 -107
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/concrete_effective_lengths_pb2.pyi +0 -496
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/punching_reinforcement_pb2.py +0 -52
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/punching_reinforcement_pb2.pyi +0 -201
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/reinforcement_direction_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/reinforcement_direction_pb2.pyi +0 -47
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/surface_reinforcement_pb2.py +0 -74
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_concrete_design/surface_reinforcement_pb2.pyi +0 -557
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/__init__.py +0 -4
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_hinge_pb2.py +0 -123
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_hinge_pb2.pyi +0 -722
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_mesh_refinement_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_mesh_refinement_pb2.pyi +0 -49
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_support_pb2.py +0 -151
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_support_pb2.pyi +0 -1006
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_welded_joint_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_lines/line_welded_joint_pb2.pyi +0 -90
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/__init__.py +0 -13
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/design_support_pb2.py +0 -50
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/design_support_pb2.pyi +0 -161
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_definable_stiffness_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_definable_stiffness_pb2.pyi +0 -52
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_eccentricity_pb2.py +0 -49
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_eccentricity_pb2.pyi +0 -113
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_hinge_pb2.py +0 -195
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_hinge_pb2.pyi +0 -1458
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_nonlinearity_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_nonlinearity_pb2.pyi +0 -61
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_openings_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_openings_pb2.pyi +0 -93
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_result_intermediate_point_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_result_intermediate_point_pb2.pyi +0 -52
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_rotational_restraint_pb2.py +0 -50
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_rotational_restraint_pb2.pyi +0 -123
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_shear_panel_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_shear_panel_pb2.pyi +0 -80
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_spring_pb2.py +0 -52
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_spring_pb2.pyi +0 -149
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_stiffness_modification_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_stiffness_modification_pb2.pyi +0 -127
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_support_pb2.py +0 -49
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_support_pb2.pyi +0 -156
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_transverse_stiffener_pb2.py +0 -48
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_members/member_transverse_stiffener_pb2.pyi +0 -143
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_nodes/__init__.py +0 -2
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_nodes/nodal_mesh_refinement_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_nodes/nodal_mesh_refinement_pb2.pyi +0 -63
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_nodes/nodal_support_pb2.py +0 -201
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_nodes/nodal_support_pb2.pyi +0 -1360
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_solids/__init__.py +0 -3
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_solids/solid_contacts_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_solids/solid_contacts_pb2.pyi +0 -59
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_solids/solid_gas_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_solids/solid_gas_pb2.pyi +0 -28
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_solids/solid_mesh_refinement_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_solids/solid_mesh_refinement_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/__init__.py +0 -4
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/line_release_type_pb2.py +0 -124
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/line_release_type_pb2.pyi +0 -757
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/nodal_release_type_pb2.py +0 -124
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/nodal_release_type_pb2.pyi +0 -799
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/surface_release_type_pb2.py +0 -81
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/surface_release_type_pb2.pyi +0 -374
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/surfaces_contact_type_pb2.py +0 -44
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_special_objects/surfaces_contact_type_pb2.pyi +0 -77
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_steel_design/__init__.py +0 -3
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_steel_design/steel_boundary_conditions_pb2.py +0 -51
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_steel_design/steel_boundary_conditions_pb2.pyi +0 -188
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_steel_design/steel_effective_lengths_pb2.py +0 -113
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_steel_design/steel_effective_lengths_pb2.pyi +0 -502
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_steel_design/steel_member_local_section_reduction_pb2.py +0 -46
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_steel_design/steel_member_local_section_reduction_pb2.pyi +0 -119
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/__init__.py +0 -4
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_eccentricity_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_eccentricity_pb2.pyi +0 -71
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_mesh_refinement_pb2.py +0 -36
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_mesh_refinement_pb2.pyi +0 -30
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_stiffness_modification_pb2.py +0 -40
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_stiffness_modification_pb2.pyi +0 -155
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_support_pb2.py +0 -43
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_surfaces/surface_support_pb2.pyi +0 -80
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/__init__.py +0 -5
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_effective_lengths_pb2.py +0 -93
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_effective_lengths_pb2.pyi +0 -414
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_member_local_section_reduction_pb2.py +0 -48
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_member_local_section_reduction_pb2.pyi +0 -121
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_moisture_class_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_moisture_class_pb2.pyi +0 -45
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_service_class_pb2.py +0 -38
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_service_class_pb2.pyi +0 -45
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_service_conditions_pb2.py +0 -42
- dlubal_api-2.10.8/dlubal/api/rfem/types_for_timber_design/timber_service_conditions_pb2.pyi +0 -107
- dlubal_api-2.10.8/dlubal.api.egg-info/SOURCES.txt +0 -724
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/dlubal/__init__.py +0 -0
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/dlubal/api/__init__.py +0 -0
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/dlubal.api.egg-info/dependency_links.txt +0 -0
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/dlubal.api.egg-info/not-zip-safe +0 -0
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/dlubal.api.egg-info/requires.txt +0 -0
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/dlubal.api.egg-info/top_level.txt +0 -0
- {dlubal_api-2.10.8 → dlubal_api-2.10.10}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dlubal.api
|
|
3
|
-
Version: 2.10.
|
|
3
|
+
Version: 2.10.10
|
|
4
4
|
Summary: Python Client Library for Dlubal Software APIs powered by gRPC
|
|
5
5
|
Author: Dlubal Software
|
|
6
6
|
Author-email: api@dlubal.com
|
|
@@ -34,10 +34,10 @@ Dynamic: summary
|
|
|
34
34
|
|
|
35
35
|
This package version is fully compatible with the following **Dlubal App version**:
|
|
36
36
|
|
|
37
|
-
✅ **X.10.
|
|
37
|
+
✅ **X.10.0010.257.ab1dea478e2**
|
|
38
38
|
|
|
39
39
|
## Overview
|
|
40
|
-
The `dlubal.api` package is the next-generation Python client library for interacting with Dlubal Software APIs, leveraging modern **gRPC technology** to deliver high-speed communication, scalability, and improved performance. This API enables **seamless automation** and **remote access** to Dlubal software
|
|
40
|
+
The `dlubal.api` package is the next-generation Python client library for interacting with Dlubal Software APIs, leveraging modern **gRPC technology** to deliver high-speed communication, scalability, and improved performance. This API enables **seamless automation** and **remote access** to Dlubal software **RFEM 6** and **RSTAB 9**, with plans for near-future support for additional products in the Dlubal portfolio.
|
|
41
41
|
|
|
42
42
|
---
|
|
43
43
|
|
|
@@ -64,7 +64,7 @@ To use the API, you need:
|
|
|
64
64
|
|
|
65
65
|
### Example Usage
|
|
66
66
|
```python
|
|
67
|
-
|
|
67
|
+
from dlubal.api import rfem
|
|
68
68
|
|
|
69
69
|
with rfem.Application(api_key="your_api_key") as rfem_app:
|
|
70
70
|
# Example API call
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
|
|
9
9
|
This package version is fully compatible with the following **Dlubal App version**:
|
|
10
10
|
|
|
11
|
-
✅ **X.10.
|
|
11
|
+
✅ **X.10.0010.257.ab1dea478e2**
|
|
12
12
|
|
|
13
13
|
## Overview
|
|
14
|
-
The `dlubal.api` package is the next-generation Python client library for interacting with Dlubal Software APIs, leveraging modern **gRPC technology** to deliver high-speed communication, scalability, and improved performance. This API enables **seamless automation** and **remote access** to Dlubal software
|
|
14
|
+
The `dlubal.api` package is the next-generation Python client library for interacting with Dlubal Software APIs, leveraging modern **gRPC technology** to deliver high-speed communication, scalability, and improved performance. This API enables **seamless automation** and **remote access** to Dlubal software **RFEM 6** and **RSTAB 9**, with plans for near-future support for additional products in the Dlubal portfolio.
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
@@ -38,7 +38,7 @@ To use the API, you need:
|
|
|
38
38
|
|
|
39
39
|
### Example Usage
|
|
40
40
|
```python
|
|
41
|
-
|
|
41
|
+
from dlubal.api import rfem
|
|
42
42
|
|
|
43
43
|
with rfem.Application(api_key="your_api_key") as rfem_app:
|
|
44
44
|
# Example API call
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dlubal.api
|
|
3
|
-
Version: 2.10.
|
|
3
|
+
Version: 2.10.10
|
|
4
4
|
Summary: Python Client Library for Dlubal Software APIs powered by gRPC
|
|
5
5
|
Author: Dlubal Software
|
|
6
6
|
Author-email: api@dlubal.com
|
|
@@ -34,10 +34,10 @@ Dynamic: summary
|
|
|
34
34
|
|
|
35
35
|
This package version is fully compatible with the following **Dlubal App version**:
|
|
36
36
|
|
|
37
|
-
✅ **X.10.
|
|
37
|
+
✅ **X.10.0010.257.ab1dea478e2**
|
|
38
38
|
|
|
39
39
|
## Overview
|
|
40
|
-
The `dlubal.api` package is the next-generation Python client library for interacting with Dlubal Software APIs, leveraging modern **gRPC technology** to deliver high-speed communication, scalability, and improved performance. This API enables **seamless automation** and **remote access** to Dlubal software
|
|
40
|
+
The `dlubal.api` package is the next-generation Python client library for interacting with Dlubal Software APIs, leveraging modern **gRPC technology** to deliver high-speed communication, scalability, and improved performance. This API enables **seamless automation** and **remote access** to Dlubal software **RFEM 6** and **RSTAB 9**, with plans for near-future support for additional products in the Dlubal portfolio.
|
|
41
41
|
|
|
42
42
|
---
|
|
43
43
|
|
|
@@ -64,7 +64,7 @@ To use the API, you need:
|
|
|
64
64
|
|
|
65
65
|
### Example Usage
|
|
66
66
|
```python
|
|
67
|
-
|
|
67
|
+
from dlubal.api import rfem
|
|
68
68
|
|
|
69
69
|
with rfem.Application(api_key="your_api_key") as rfem_app:
|
|
70
70
|
# Example API call
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
README.md
|
|
2
|
+
setup.py
|
|
3
|
+
./dlubal/__init__.py
|
|
4
|
+
./dlubal/api/__init__.py
|
|
5
|
+
dlubal/__init__.py
|
|
6
|
+
dlubal.api.egg-info/PKG-INFO
|
|
7
|
+
dlubal.api.egg-info/SOURCES.txt
|
|
8
|
+
dlubal.api.egg-info/dependency_links.txt
|
|
9
|
+
dlubal.api.egg-info/not-zip-safe
|
|
10
|
+
dlubal.api.egg-info/requires.txt
|
|
11
|
+
dlubal.api.egg-info/top_level.txt
|
|
12
|
+
dlubal/api/__init__.py
|
|
@@ -19,7 +19,7 @@ readme = (here/"README.md").read_text(encoding="utf-8")
|
|
|
19
19
|
setup(
|
|
20
20
|
name='dlubal.api',
|
|
21
21
|
# version=version,
|
|
22
|
-
version="2.10.
|
|
22
|
+
version="2.10.10",
|
|
23
23
|
python_requires=">=3.10",
|
|
24
24
|
description='Python Client Library for Dlubal Software APIs powered by gRPC',
|
|
25
25
|
long_description=readme,
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
-
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
-
# source: dlubal/api/common/common.proto
|
|
5
|
-
# Protobuf Python Version: 5.28.1
|
|
6
|
-
"""Generated protocol buffer code."""
|
|
7
|
-
from google.protobuf import descriptor as _descriptor
|
|
8
|
-
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
-
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
-
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
-
from google.protobuf.internal import builder as _builder
|
|
12
|
-
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
-
_runtime_version.Domain.PUBLIC,
|
|
14
|
-
5,
|
|
15
|
-
28,
|
|
16
|
-
1,
|
|
17
|
-
'',
|
|
18
|
-
'dlubal/api/common/common.proto'
|
|
19
|
-
)
|
|
20
|
-
# @@protoc_insertion_point(imports)
|
|
21
|
-
|
|
22
|
-
_sym_db = _symbol_database.Default()
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1e\x64lubal/api/common/common.proto\x12\x11\x64lubal.api.common\"+\n\x08Vector3d\x12\t\n\x01x\x18\x01 \x01(\x01\x12\t\n\x01y\x18\x02 \x01(\x01\x12\t\n\x01z\x18\x03 \x01(\x01\"\x16\n\x05\x43olor\x12\r\n\x05value\x18\x01 \x01(\t\"\x9e\x01\n\x05Value\x12\x32\n\nnull_value\x18\x01 \x01(\x0e\x32\x1c.dlubal.api.common.NullValueH\x00\x12\x13\n\tint_value\x18\x02 \x01(\x05H\x00\x12\x16\n\x0c\x64ouble_value\x18\x03 \x01(\x01H\x00\x12\x16\n\x0cstring_value\x18\x04 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x05 \x01(\x08H\x00\x42\x06\n\x04kind\"\xaf\x02\n\x1e\x43oordinateSystemRepresentation\x12\x0c\n\x02no\x18\x01 \x01(\x05H\x00\x12V\n\x04type\x18\x02 \x01(\x0e\x32\x46.dlubal.api.common.CoordinateSystemRepresentation.CoordinateSystemTypeH\x00\"\x82\x01\n\x14\x43oordinateSystemType\x12\"\n\x1e\x43OORDINATE_SYSTEM_TYPE_UNKNOWN\x10\x00\x12 \n\x1c\x43OORDINATE_SYSTEM_TYPE_LOCAL\x10\x01\x12$\n COORDINATE_SYSTEM_TYPE_PRINCIPAL\x10\x02\x42\"\n coordinate_system_representation*\x1b\n\tNullValue\x12\x0e\n\nNULL_VALUE\x10\x00\x62\x06proto3')
|
|
28
|
-
|
|
29
|
-
_globals = globals()
|
|
30
|
-
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
-
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'dlubal.api.common.common_pb2', _globals)
|
|
32
|
-
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
-
DESCRIPTOR._loaded_options = None
|
|
34
|
-
_globals['_NULLVALUE']._serialized_start=589
|
|
35
|
-
_globals['_NULLVALUE']._serialized_end=616
|
|
36
|
-
_globals['_VECTOR3D']._serialized_start=53
|
|
37
|
-
_globals['_VECTOR3D']._serialized_end=96
|
|
38
|
-
_globals['_COLOR']._serialized_start=98
|
|
39
|
-
_globals['_COLOR']._serialized_end=120
|
|
40
|
-
_globals['_VALUE']._serialized_start=123
|
|
41
|
-
_globals['_VALUE']._serialized_end=281
|
|
42
|
-
_globals['_COORDINATESYSTEMREPRESENTATION']._serialized_start=284
|
|
43
|
-
_globals['_COORDINATESYSTEMREPRESENTATION']._serialized_end=587
|
|
44
|
-
_globals['_COORDINATESYSTEMREPRESENTATION_COORDINATESYSTEMTYPE']._serialized_start=421
|
|
45
|
-
_globals['_COORDINATESYSTEMREPRESENTATION_COORDINATESYSTEMTYPE']._serialized_end=551
|
|
46
|
-
# @@protoc_insertion_point(module_scope)
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
|
|
2
|
-
from google.protobuf import descriptor as _descriptor
|
|
3
|
-
from google.protobuf import message as _message
|
|
4
|
-
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
|
|
5
|
-
|
|
6
|
-
DESCRIPTOR: _descriptor.FileDescriptor
|
|
7
|
-
|
|
8
|
-
class NullValue(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
9
|
-
__slots__ = ()
|
|
10
|
-
NULL_VALUE: _ClassVar[NullValue]
|
|
11
|
-
NULL_VALUE: NullValue
|
|
12
|
-
|
|
13
|
-
class Vector3d(_message.Message):
|
|
14
|
-
__slots__ = ("x", "y", "z")
|
|
15
|
-
X_FIELD_NUMBER: _ClassVar[int]
|
|
16
|
-
Y_FIELD_NUMBER: _ClassVar[int]
|
|
17
|
-
Z_FIELD_NUMBER: _ClassVar[int]
|
|
18
|
-
x: float
|
|
19
|
-
y: float
|
|
20
|
-
z: float
|
|
21
|
-
def __init__(self, x: _Optional[float] = ..., y: _Optional[float] = ..., z: _Optional[float] = ...) -> None: ...
|
|
22
|
-
|
|
23
|
-
class Color(_message.Message):
|
|
24
|
-
__slots__ = ("value",)
|
|
25
|
-
VALUE_FIELD_NUMBER: _ClassVar[int]
|
|
26
|
-
value: str
|
|
27
|
-
def __init__(self, value: _Optional[str] = ...) -> None: ...
|
|
28
|
-
|
|
29
|
-
class Value(_message.Message):
|
|
30
|
-
__slots__ = ("null_value", "int_value", "double_value", "string_value", "bool_value")
|
|
31
|
-
NULL_VALUE_FIELD_NUMBER: _ClassVar[int]
|
|
32
|
-
INT_VALUE_FIELD_NUMBER: _ClassVar[int]
|
|
33
|
-
DOUBLE_VALUE_FIELD_NUMBER: _ClassVar[int]
|
|
34
|
-
STRING_VALUE_FIELD_NUMBER: _ClassVar[int]
|
|
35
|
-
BOOL_VALUE_FIELD_NUMBER: _ClassVar[int]
|
|
36
|
-
null_value: NullValue
|
|
37
|
-
int_value: int
|
|
38
|
-
double_value: float
|
|
39
|
-
string_value: str
|
|
40
|
-
bool_value: bool
|
|
41
|
-
def __init__(self, null_value: _Optional[_Union[NullValue, str]] = ..., int_value: _Optional[int] = ..., double_value: _Optional[float] = ..., string_value: _Optional[str] = ..., bool_value: bool = ...) -> None: ...
|
|
42
|
-
|
|
43
|
-
class CoordinateSystemRepresentation(_message.Message):
|
|
44
|
-
__slots__ = ("no", "type")
|
|
45
|
-
class CoordinateSystemType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
46
|
-
__slots__ = ()
|
|
47
|
-
COORDINATE_SYSTEM_TYPE_UNKNOWN: _ClassVar[CoordinateSystemRepresentation.CoordinateSystemType]
|
|
48
|
-
COORDINATE_SYSTEM_TYPE_LOCAL: _ClassVar[CoordinateSystemRepresentation.CoordinateSystemType]
|
|
49
|
-
COORDINATE_SYSTEM_TYPE_PRINCIPAL: _ClassVar[CoordinateSystemRepresentation.CoordinateSystemType]
|
|
50
|
-
COORDINATE_SYSTEM_TYPE_UNKNOWN: CoordinateSystemRepresentation.CoordinateSystemType
|
|
51
|
-
COORDINATE_SYSTEM_TYPE_LOCAL: CoordinateSystemRepresentation.CoordinateSystemType
|
|
52
|
-
COORDINATE_SYSTEM_TYPE_PRINCIPAL: CoordinateSystemRepresentation.CoordinateSystemType
|
|
53
|
-
NO_FIELD_NUMBER: _ClassVar[int]
|
|
54
|
-
TYPE_FIELD_NUMBER: _ClassVar[int]
|
|
55
|
-
no: int
|
|
56
|
-
type: CoordinateSystemRepresentation.CoordinateSystemType
|
|
57
|
-
def __init__(self, no: _Optional[int] = ..., type: _Optional[_Union[CoordinateSystemRepresentation.CoordinateSystemType, str]] = ...) -> None: ...
|
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
''' Definition file '''
|
|
2
|
-
import os
|
|
3
|
-
import ssl
|
|
4
|
-
import grpc
|
|
5
|
-
|
|
6
|
-
from pathlib import Path
|
|
7
|
-
from configparser import ConfigParser
|
|
8
|
-
from pkg_resources import get_distribution, DistributionNotFound
|
|
9
|
-
|
|
10
|
-
# Enable prompt option for testing purposes
|
|
11
|
-
prompt = False
|
|
12
|
-
|
|
13
|
-
options = [
|
|
14
|
-
('grpc.max_send_message_length', -1),
|
|
15
|
-
('grpc.max_receive_message_length', -1),
|
|
16
|
-
]
|
|
17
|
-
compression = grpc.Compression.Gzip # https://grpc.io/docs/guides/compression/
|
|
18
|
-
|
|
19
|
-
class _config():
|
|
20
|
-
def __init__(self):
|
|
21
|
-
'''
|
|
22
|
-
Read config file. It is doesn't exist, create one.
|
|
23
|
-
'''
|
|
24
|
-
self.config = ConfigParser()
|
|
25
|
-
self.config_loc = Path(Path(__file__).parents[1], 'config.ini')
|
|
26
|
-
# Parse existing file
|
|
27
|
-
if os.path.isfile(self.config_loc):
|
|
28
|
-
self.config.read(self.config_loc)
|
|
29
|
-
|
|
30
|
-
def _save_to_file(self):
|
|
31
|
-
'''
|
|
32
|
-
Save current config file
|
|
33
|
-
'''
|
|
34
|
-
with open(self.config_loc, 'w', encoding="utf-8") as config_file:
|
|
35
|
-
self.config.write(config_file)
|
|
36
|
-
|
|
37
|
-
def get_name_of_default(self):
|
|
38
|
-
'''
|
|
39
|
-
Return first name of the API key, which was set as default
|
|
40
|
-
'''
|
|
41
|
-
all_items = self.config.items('api_keys')
|
|
42
|
-
all_keys = self.config.options('api_keys')
|
|
43
|
-
if 'default' in all_keys:
|
|
44
|
-
default_value = self.config.get('api_keys', 'default')
|
|
45
|
-
for i in all_items:
|
|
46
|
-
if i[0] != 'default' and i[1] == default_value:
|
|
47
|
-
return i[0]
|
|
48
|
-
return None
|
|
49
|
-
|
|
50
|
-
def _set(self, section, key, value):
|
|
51
|
-
'''
|
|
52
|
-
Set value and save config into file
|
|
53
|
-
'''
|
|
54
|
-
self.config.set(section, key, value)
|
|
55
|
-
self._save_to_file()
|
|
56
|
-
|
|
57
|
-
def get_value(self, key):
|
|
58
|
-
'''
|
|
59
|
-
Get API key from config
|
|
60
|
-
'''
|
|
61
|
-
value = None
|
|
62
|
-
if self.config.has_section('api_keys'):
|
|
63
|
-
value = self.config.get('api_keys', key, fallback=None)
|
|
64
|
-
if value and value.startswith(('AK', 'ak')):
|
|
65
|
-
# Set default
|
|
66
|
-
self._set('api_keys', 'default', value)
|
|
67
|
-
return value
|
|
68
|
-
|
|
69
|
-
def set_value(self, key, value):
|
|
70
|
-
'''
|
|
71
|
-
Set API key into config
|
|
72
|
-
'''
|
|
73
|
-
if self.config.has_section('api_keys'):
|
|
74
|
-
self._set('api_keys', key, value)
|
|
75
|
-
else:
|
|
76
|
-
self.config.add_section('api_keys')
|
|
77
|
-
self._set('api_keys', key, value)
|
|
78
|
-
# Set default
|
|
79
|
-
self._set('api_keys', 'default', value)
|
|
80
|
-
|
|
81
|
-
def delete_value(self, section, key):
|
|
82
|
-
'''
|
|
83
|
-
Delete API key
|
|
84
|
-
'''
|
|
85
|
-
self.config.remove_option(section, key)
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
class _ApiKey():
|
|
89
|
-
'''
|
|
90
|
-
API key class to make it easy to manage API keys.
|
|
91
|
-
'''
|
|
92
|
-
def __init__(self, key=None , value=None):
|
|
93
|
-
|
|
94
|
-
self.key = key
|
|
95
|
-
self.value = value
|
|
96
|
-
self.config = _config()
|
|
97
|
-
|
|
98
|
-
if self.key and self.value:
|
|
99
|
-
# Check if API key is saved. If not, save it to config file.
|
|
100
|
-
if self.config.get_value(self.key) is None:
|
|
101
|
-
self.config.set_value(self.key, self.value)
|
|
102
|
-
elif self.key:
|
|
103
|
-
# Check if API key is saved, get it and put into self.value
|
|
104
|
-
self.value = self.config.get_value(self.key)
|
|
105
|
-
elif self.value:
|
|
106
|
-
# Providing value without key suggests user doesn't want to store it
|
|
107
|
-
# Don't even store any default value
|
|
108
|
-
pass
|
|
109
|
-
else:
|
|
110
|
-
# Key and value are None
|
|
111
|
-
# Check if there is any default key set in config
|
|
112
|
-
self.value = self.config.get_value('default')
|
|
113
|
-
if self.value:
|
|
114
|
-
default_key = self.config.get_name_of_default()
|
|
115
|
-
if default_key:
|
|
116
|
-
# Print only if key is found
|
|
117
|
-
print(f'API key: {self.config.get_name_of_default()}')
|
|
118
|
-
|
|
119
|
-
def get(self, key=None):
|
|
120
|
-
'''
|
|
121
|
-
Get API key
|
|
122
|
-
'''
|
|
123
|
-
if key:
|
|
124
|
-
self.value = self.config.get_value(key)
|
|
125
|
-
else:
|
|
126
|
-
self.value = self.config.get_value('default')
|
|
127
|
-
|
|
128
|
-
if self.value is None:
|
|
129
|
-
raise ValueError("Invalid API key idenficator or missing default value.")
|
|
130
|
-
return self.value
|
|
131
|
-
|
|
132
|
-
def set(self, key, value):
|
|
133
|
-
'''
|
|
134
|
-
Set APi key
|
|
135
|
-
'''
|
|
136
|
-
self.config.set_value(key, value)
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
class _ClientCallDetails(grpc.ClientCallDetails):
|
|
140
|
-
'''
|
|
141
|
-
Client call details class to pass authorization API key
|
|
142
|
-
'''
|
|
143
|
-
def __init__(self, call_details, metadata):
|
|
144
|
-
self.method = call_details.method
|
|
145
|
-
self.timeout = call_details.timeout
|
|
146
|
-
self.credentials = call_details.credentials
|
|
147
|
-
self.metadata = metadata
|
|
148
|
-
|
|
149
|
-
class AuthInterceptor(grpc.UnaryUnaryClientInterceptor):
|
|
150
|
-
'''
|
|
151
|
-
Authorization Unary Interceptor class
|
|
152
|
-
'''
|
|
153
|
-
def __init__(self, value):
|
|
154
|
-
self.api_key = value
|
|
155
|
-
|
|
156
|
-
# def intercept_call(self, continuation, client_call_details, request_or_iterator):
|
|
157
|
-
# client_version = get_distribution('dlubal.api').version
|
|
158
|
-
# call_details = _ClientCallDetails(client_call_details, [("authorization", f"Bearer {self.api_key}"),("api-client-info", f"Python | {client_version}"),])
|
|
159
|
-
# return continuation(call_details, request_or_iterator)
|
|
160
|
-
|
|
161
|
-
def intercept_call(self, continuation, client_call_details, request_or_iterator):
|
|
162
|
-
try:
|
|
163
|
-
client_version = get_distribution('dlubal.api').version
|
|
164
|
-
except DistributionNotFound:
|
|
165
|
-
# Package not installed, fallback to default version string
|
|
166
|
-
client_version = "dev"
|
|
167
|
-
|
|
168
|
-
call_details = _ClientCallDetails(
|
|
169
|
-
client_call_details,
|
|
170
|
-
[
|
|
171
|
-
("authorization", f"Bearer {self.api_key}"),
|
|
172
|
-
("api-client-info", f"Python | {client_version}"),
|
|
173
|
-
]
|
|
174
|
-
)
|
|
175
|
-
return continuation(call_details, request_or_iterator)
|
|
176
|
-
|
|
177
|
-
def intercept_unary_unary(self, continuation, client_call_details, request):
|
|
178
|
-
return self.intercept_call(continuation, client_call_details, request)
|
|
179
|
-
|
|
180
|
-
def check_ssl(_ssl, _ssl_file):
|
|
181
|
-
'''
|
|
182
|
-
Check SSL certificate
|
|
183
|
-
Params:
|
|
184
|
-
_ssl (bool): False if NOT using SSL auth. True if using SSL certificate.
|
|
185
|
-
_ssl_file (str):Path to .crt/.pem certificate.
|
|
186
|
-
'''
|
|
187
|
-
if _ssl is False:
|
|
188
|
-
pass
|
|
189
|
-
elif _ssl is True:
|
|
190
|
-
if isinstance(_ssl_file, str) and os.path.isfile(_ssl_file) and _ssl_file.endswith(('.crt', '.pem')):
|
|
191
|
-
# Use provided file
|
|
192
|
-
pass
|
|
193
|
-
elif _ssl_file == '':
|
|
194
|
-
# Use Windows Certification Store
|
|
195
|
-
pass
|
|
196
|
-
else:
|
|
197
|
-
# Provided path is not correct
|
|
198
|
-
exit()
|
|
199
|
-
|
|
200
|
-
return True
|
|
201
|
-
|
|
202
|
-
def _get_ssl_credentials(_ssl_file) -> grpc.ChannelCredentials:
|
|
203
|
-
'''
|
|
204
|
-
Get SSL channel credentials by reading cert. file
|
|
205
|
-
|
|
206
|
-
Params:
|
|
207
|
-
path (str): Path to the SSL (.crt) certificate filepath
|
|
208
|
-
'''
|
|
209
|
-
if _ssl_file == '':
|
|
210
|
-
certs = ssl.create_default_context().get_ca_certs(True)
|
|
211
|
-
cert_string = ''
|
|
212
|
-
for cert in certs:
|
|
213
|
-
cert_string += ssl.DER_cert_to_PEM_cert(cert)
|
|
214
|
-
return grpc.ssl_channel_credentials(root_certificates=cert_string.encode('utf-8'))
|
|
215
|
-
else:
|
|
216
|
-
cert_file = open(_ssl_file, 'rb')
|
|
217
|
-
return grpc.ssl_channel_credentials(cert_file.read())
|
|
218
|
-
|
|
219
|
-
def init_channel(API_key, url, port, _ssl, _ssl_file):
|
|
220
|
-
'''
|
|
221
|
-
Initialize the gRPC channel with the provided API key.
|
|
222
|
-
|
|
223
|
-
Params:
|
|
224
|
-
API_key (str): Api key
|
|
225
|
-
url (str): URL number defaults to localhost (127.0.0.1)
|
|
226
|
-
port (int): Port number defaults to 9000
|
|
227
|
-
_ssl (bool): True if using SSL
|
|
228
|
-
_ssl_file (str): Path to SSL cert file
|
|
229
|
-
'''
|
|
230
|
-
channel = None
|
|
231
|
-
try:
|
|
232
|
-
if _ssl:
|
|
233
|
-
# Create secure channel
|
|
234
|
-
channel_credentials = _get_ssl_credentials(_ssl_file)
|
|
235
|
-
channel = grpc.secure_channel(f"{url}:{port}", channel_credentials, options, compression)
|
|
236
|
-
else:
|
|
237
|
-
# Create insecure channel
|
|
238
|
-
channel = grpc.insecure_channel(f"{url}:{port}", options, compression)
|
|
239
|
-
|
|
240
|
-
# Create gRPC interceptor
|
|
241
|
-
interceptor = AuthInterceptor(API_key)
|
|
242
|
-
channel = grpc.intercept_channel(channel, interceptor)
|
|
243
|
-
|
|
244
|
-
# All exceptions are handeled at the RFEM.__exit__()
|
|
245
|
-
except:
|
|
246
|
-
pass
|
|
247
|
-
|
|
248
|
-
return channel
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
def exception_handler(exception, value, traceback):
|
|
2
|
-
'''
|
|
3
|
-
Exception handler
|
|
4
|
-
'''
|
|
5
|
-
print('ERROR:')
|
|
6
|
-
if traceback:
|
|
7
|
-
print(f'File: {traceback.tb_frame.f_code.co_filename}, line: {traceback.tb_frame.f_lineno}')
|
|
8
|
-
if value:
|
|
9
|
-
try:
|
|
10
|
-
print('Message:', value.details())
|
|
11
|
-
except:
|
|
12
|
-
print('Message:', value)
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
-
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
-
# source: dlubal/api/common/model_id.proto
|
|
5
|
-
# Protobuf Python Version: 5.28.1
|
|
6
|
-
"""Generated protocol buffer code."""
|
|
7
|
-
from google.protobuf import descriptor as _descriptor
|
|
8
|
-
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
-
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
-
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
-
from google.protobuf.internal import builder as _builder
|
|
12
|
-
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
-
_runtime_version.Domain.PUBLIC,
|
|
14
|
-
5,
|
|
15
|
-
28,
|
|
16
|
-
1,
|
|
17
|
-
'',
|
|
18
|
-
'dlubal/api/common/model_id.proto'
|
|
19
|
-
)
|
|
20
|
-
# @@protoc_insertion_point(imports)
|
|
21
|
-
|
|
22
|
-
_sym_db = _symbol_database.Default()
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n dlubal/api/common/model_id.proto\x12\x11\x64lubal.api.common\"\x17\n\x07ModelId\x12\x0c\n\x04guid\x18\x01 \x01(\t\"-\n\x0fOptionalModelId\x12\x11\n\x04guid\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_guidb\x06proto3')
|
|
28
|
-
|
|
29
|
-
_globals = globals()
|
|
30
|
-
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
-
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'dlubal.api.common.model_id_pb2', _globals)
|
|
32
|
-
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
-
DESCRIPTOR._loaded_options = None
|
|
34
|
-
_globals['_MODELID']._serialized_start=55
|
|
35
|
-
_globals['_MODELID']._serialized_end=78
|
|
36
|
-
_globals['_OPTIONALMODELID']._serialized_start=80
|
|
37
|
-
_globals['_OPTIONALMODELID']._serialized_end=125
|
|
38
|
-
# @@protoc_insertion_point(module_scope)
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
from google.protobuf import descriptor as _descriptor
|
|
2
|
-
from google.protobuf import message as _message
|
|
3
|
-
from typing import ClassVar as _ClassVar, Optional as _Optional
|
|
4
|
-
|
|
5
|
-
DESCRIPTOR: _descriptor.FileDescriptor
|
|
6
|
-
|
|
7
|
-
class ModelId(_message.Message):
|
|
8
|
-
__slots__ = ("guid",)
|
|
9
|
-
GUID_FIELD_NUMBER: _ClassVar[int]
|
|
10
|
-
guid: str
|
|
11
|
-
def __init__(self, guid: _Optional[str] = ...) -> None: ...
|
|
12
|
-
|
|
13
|
-
class OptionalModelId(_message.Message):
|
|
14
|
-
__slots__ = ("guid",)
|
|
15
|
-
GUID_FIELD_NUMBER: _ClassVar[int]
|
|
16
|
-
guid: str
|
|
17
|
-
def __init__(self, guid: _Optional[str] = ...) -> None: ...
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import pandas
|
|
2
|
-
|
|
3
|
-
class Table:
|
|
4
|
-
|
|
5
|
-
def __init__(self, data: pandas.DataFrame):
|
|
6
|
-
self.data = data
|
|
7
|
-
|
|
8
|
-
def __getitem__(self, key):
|
|
9
|
-
if isinstance(key, str):
|
|
10
|
-
return self.col(key)
|
|
11
|
-
elif isinstance(key, int):
|
|
12
|
-
return self.row(key)
|
|
13
|
-
|
|
14
|
-
def col(self, key):
|
|
15
|
-
column = self.data[key]
|
|
16
|
-
if len(column) == 0:
|
|
17
|
-
return None
|
|
18
|
-
if len(column) == 1:
|
|
19
|
-
return column.values[0]
|
|
20
|
-
return column.values
|
|
21
|
-
|
|
22
|
-
def row(self, idx):
|
|
23
|
-
return self.data.iloc[idx]
|
|
24
|
-
|
|
25
|
-
def values(self, *keys):
|
|
26
|
-
results = [self.col(key) for key in keys]
|
|
27
|
-
try:
|
|
28
|
-
result_tuples = list(zip(*results))
|
|
29
|
-
if len(result_tuples) == 0:
|
|
30
|
-
return None
|
|
31
|
-
if len(result_tuples) == 1:
|
|
32
|
-
return result_tuples[0]
|
|
33
|
-
else:
|
|
34
|
-
return result_tuples
|
|
35
|
-
except:
|
|
36
|
-
return tuple(results)
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
-
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
-
# source: dlubal/api/common/table_data.proto
|
|
5
|
-
# Protobuf Python Version: 5.28.1
|
|
6
|
-
"""Generated protocol buffer code."""
|
|
7
|
-
from google.protobuf import descriptor as _descriptor
|
|
8
|
-
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
-
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
-
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
-
from google.protobuf.internal import builder as _builder
|
|
12
|
-
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
-
_runtime_version.Domain.PUBLIC,
|
|
14
|
-
5,
|
|
15
|
-
28,
|
|
16
|
-
1,
|
|
17
|
-
'',
|
|
18
|
-
'dlubal/api/common/table_data.proto'
|
|
19
|
-
)
|
|
20
|
-
# @@protoc_insertion_point(imports)
|
|
21
|
-
|
|
22
|
-
_sym_db = _symbol_database.Default()
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
from dlubal.api.common import common_pb2 as dlubal_dot_api_dot_common_dot_common__pb2
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"dlubal/api/common/table_data.proto\x12\x11\x64lubal.api.common\x1a\x1e\x64lubal/api/common/common.proto\"J\n\tTableData\x12\x12\n\ncolumn_ids\x18\x01 \x03(\t\x12)\n\x04rows\x18\x02 \x03(\x0b\x32\x1b.dlubal.api.common.TableRow\"4\n\x08TableRow\x12(\n\x06values\x18\x01 \x03(\x0b\x32\x18.dlubal.api.common.Valueb\x06proto3')
|
|
29
|
-
|
|
30
|
-
_globals = globals()
|
|
31
|
-
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
32
|
-
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'dlubal.api.common.table_data_pb2', _globals)
|
|
33
|
-
if not _descriptor._USE_C_DESCRIPTORS:
|
|
34
|
-
DESCRIPTOR._loaded_options = None
|
|
35
|
-
_globals['_TABLEDATA']._serialized_start=89
|
|
36
|
-
_globals['_TABLEDATA']._serialized_end=163
|
|
37
|
-
_globals['_TABLEROW']._serialized_start=165
|
|
38
|
-
_globals['_TABLEROW']._serialized_end=217
|
|
39
|
-
# @@protoc_insertion_point(module_scope)
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
from dlubal.api.common import common_pb2 as _common_pb2
|
|
2
|
-
from google.protobuf.internal import containers as _containers
|
|
3
|
-
from google.protobuf import descriptor as _descriptor
|
|
4
|
-
from google.protobuf import message as _message
|
|
5
|
-
from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
|
|
6
|
-
|
|
7
|
-
DESCRIPTOR: _descriptor.FileDescriptor
|
|
8
|
-
|
|
9
|
-
class TableData(_message.Message):
|
|
10
|
-
__slots__ = ("column_ids", "rows")
|
|
11
|
-
COLUMN_IDS_FIELD_NUMBER: _ClassVar[int]
|
|
12
|
-
ROWS_FIELD_NUMBER: _ClassVar[int]
|
|
13
|
-
column_ids: _containers.RepeatedScalarFieldContainer[str]
|
|
14
|
-
rows: _containers.RepeatedCompositeFieldContainer[TableRow]
|
|
15
|
-
def __init__(self, column_ids: _Optional[_Iterable[str]] = ..., rows: _Optional[_Iterable[_Union[TableRow, _Mapping]]] = ...) -> None: ...
|
|
16
|
-
|
|
17
|
-
class TableRow(_message.Message):
|
|
18
|
-
__slots__ = ("values",)
|
|
19
|
-
VALUES_FIELD_NUMBER: _ClassVar[int]
|
|
20
|
-
values: _containers.RepeatedCompositeFieldContainer[_common_pb2.Value]
|
|
21
|
-
def __init__(self, values: _Optional[_Iterable[_Union[_common_pb2.Value, _Mapping]]] = ...) -> None: ...
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
from .all_pb2 import *
|
|
2
|
-
from .application import *
|
|
3
|
-
from .application_pb2 import *
|
|
4
|
-
from .base_data_pb2 import *
|
|
5
|
-
from .object_id_pb2 import *
|
|
6
|
-
from .object_type_pb2 import *
|
|
7
|
-
from . import aluminum_design_objects
|
|
8
|
-
from . import base_data
|
|
9
|
-
from . import building_model
|
|
10
|
-
from . import calculation_diagrams
|
|
11
|
-
from . import concrete_design_objects
|
|
12
|
-
from . import construction_stages
|
|
13
|
-
from . import dynamic_loads
|
|
14
|
-
from . import geotechnical_analysis
|
|
15
|
-
from . import global_parameters
|
|
16
|
-
from . import guide_objects
|
|
17
|
-
from . import ifc_objects
|
|
18
|
-
from . import imperfections
|
|
19
|
-
from . import import_export
|
|
20
|
-
from . import loading
|
|
21
|
-
from . import loads
|
|
22
|
-
from . import load_wizards
|
|
23
|
-
from . import results
|
|
24
|
-
from . import result_objects
|
|
25
|
-
from . import steel_design_objects
|
|
26
|
-
from . import structure_advanced
|
|
27
|
-
from . import structure_core
|
|
28
|
-
from . import timber_design_objects
|
|
29
|
-
from . import types_for_aluminum_design
|
|
30
|
-
from . import types_for_concrete_design
|
|
31
|
-
from . import types_for_lines
|
|
32
|
-
from . import types_for_members
|
|
33
|
-
from . import types_for_nodes
|
|
34
|
-
from . import types_for_solids
|
|
35
|
-
from . import types_for_special_objects
|
|
36
|
-
from . import types_for_steel_design
|
|
37
|
-
from . import types_for_surfaces
|
|
38
|
-
from . import types_for_timber_design
|