luminarycloud 0.22.0__py3-none-any.whl → 0.22.2__py3-none-any.whl

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.
Files changed (86) hide show
  1. luminarycloud/_client/authentication_plugin.py +49 -0
  2. luminarycloud/_client/client.py +38 -11
  3. luminarycloud/_client/http_client.py +1 -1
  4. luminarycloud/_client/retry_interceptor.py +64 -2
  5. luminarycloud/_helpers/__init__.py +9 -0
  6. luminarycloud/_helpers/_inference_jobs.py +227 -0
  7. luminarycloud/_helpers/_parse_iso_datetime.py +54 -0
  8. luminarycloud/_helpers/download.py +11 -0
  9. luminarycloud/_helpers/proto_decorator.py +38 -7
  10. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.py +152 -132
  11. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +66 -8
  12. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.py +34 -0
  13. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.pyi +12 -0
  14. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +142 -39
  15. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +300 -3
  16. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py +34 -0
  17. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi +12 -0
  18. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2.py +255 -0
  19. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2.pyi +466 -0
  20. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2_grpc.py +242 -0
  21. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2_grpc.pyi +95 -0
  22. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +29 -7
  23. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +39 -0
  24. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.py +36 -0
  25. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.pyi +18 -0
  26. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.py +88 -65
  27. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.pyi +42 -0
  28. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.py +34 -0
  29. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.pyi +12 -0
  30. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +163 -153
  31. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +37 -3
  32. luminarycloud/_proto/base/base_pb2.py +7 -6
  33. luminarycloud/_proto/base/base_pb2.pyi +4 -0
  34. luminarycloud/_proto/client/simulation_pb2.py +358 -339
  35. luminarycloud/_proto/client/simulation_pb2.pyi +89 -3
  36. luminarycloud/_proto/physicsaiinferenceservice/physicsaiinferenceservice_pb2.py +35 -0
  37. luminarycloud/_proto/physicsaiinferenceservice/physicsaiinferenceservice_pb2.pyi +7 -0
  38. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py +6 -3
  39. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py +68 -0
  40. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi +24 -0
  41. luminarycloud/_wrapper.py +53 -7
  42. luminarycloud/enum/vis_enums.py +6 -0
  43. luminarycloud/feature_modification.py +25 -32
  44. luminarycloud/geometry.py +10 -6
  45. luminarycloud/geometry_version.py +4 -0
  46. luminarycloud/mesh.py +4 -0
  47. luminarycloud/meshing/mesh_generation_params.py +5 -6
  48. luminarycloud/meshing/sizing_strategy/sizing_strategies.py +1 -2
  49. luminarycloud/outputs/__init__.py +2 -0
  50. luminarycloud/outputs/output_definitions.py +3 -3
  51. luminarycloud/outputs/stopping_conditions.py +94 -0
  52. luminarycloud/params/enum/_enum_wrappers.py +16 -0
  53. luminarycloud/params/geometry/shapes.py +33 -33
  54. luminarycloud/params/simulation/adaptive_mesh_refinement/__init__.py +1 -0
  55. luminarycloud/params/simulation/adaptive_mesh_refinement/active_region_.py +83 -0
  56. luminarycloud/params/simulation/adaptive_mesh_refinement/boundary_layer_profile_.py +1 -1
  57. luminarycloud/params/simulation/adaptive_mesh_refinement_.py +8 -1
  58. luminarycloud/physics_ai/__init__.py +7 -0
  59. luminarycloud/physics_ai/inference.py +166 -199
  60. luminarycloud/physics_ai/models.py +22 -0
  61. luminarycloud/physics_ai/solution.py +4 -0
  62. luminarycloud/pipelines/api.py +143 -16
  63. luminarycloud/pipelines/core.py +1 -1
  64. luminarycloud/pipelines/stages.py +22 -9
  65. luminarycloud/project.py +61 -8
  66. luminarycloud/simulation.py +25 -0
  67. luminarycloud/types/__init__.py +2 -0
  68. luminarycloud/types/ids.py +2 -0
  69. luminarycloud/types/vector3.py +1 -2
  70. luminarycloud/vis/__init__.py +1 -0
  71. luminarycloud/vis/data_extraction.py +7 -7
  72. luminarycloud/vis/filters.py +97 -0
  73. luminarycloud/vis/interactive_report.py +163 -7
  74. luminarycloud/vis/report.py +113 -1
  75. luminarycloud/vis/visualization.py +3 -0
  76. luminarycloud/volume_selection.py +16 -8
  77. luminarycloud/workflow_utils.py +149 -0
  78. {luminarycloud-0.22.0.dist-info → luminarycloud-0.22.2.dist-info}/METADATA +1 -1
  79. {luminarycloud-0.22.0.dist-info → luminarycloud-0.22.2.dist-info}/RECORD +80 -76
  80. {luminarycloud-0.22.0.dist-info → luminarycloud-0.22.2.dist-info}/WHEEL +1 -1
  81. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2.py +0 -61
  82. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2.pyi +0 -85
  83. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2_grpc.py +0 -67
  84. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2_grpc.pyi +0 -26
  85. luminarycloud/_proto/inferenceservice/inferenceservice_pb2.py +0 -69
  86. luminarycloud/pipeline_util/dictable.py +0 -27
@@ -20,7 +20,7 @@ from luminarycloud._proto.table import table_pb2 as proto_dot_table_dot_table__p
20
20
  from luminarycloud._proto.api.v0.luminarycloud.common import common_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_common_dot_common__pb2
21
21
 
22
22
 
23
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n(proto/api/v0/luminarycloud/vis/vis.proto\x12\'luminary.proto.api.v0.luminarycloud.vis\x1a\x1cgoogle/api/annotations.proto\x1a\x1bproto/options/options.proto\x1a\x1dproto/quantity/quantity.proto\x1a\x17proto/table/table.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\"=\n\x03Pan\x12\x1a\n\x01x\x18\x01 \x01(\x01\x42\x0f\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x12\x1a\n\x01y\x18\x02 \x01(\x01\x42\x0f\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x00\x00\"\xa4\x02\n\x0c\x43\x61meraLookAt\x12\x45\n\x08position\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x44\n\x07look_at\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12?\n\x02up\x18\x03 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12>\n\x03pan\x18\x04 \x01(\x0b\x32,.luminary.proto.api.v0.luminarycloud.vis.PanH\x00\x88\x01\x01\x42\x06\n\x04_pan\"}\n\nResolution\x12\x36\n\x05width\x18\x01 \x01(\x05\x42\'\x82\xb2\x19\x03\x30\x80\x0f\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00Y@\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xb0@\x8a\xb2\x19\x02\x18\x00\x12\x37\n\x06height\x18\x02 \x01(\x05\x42\'\x82\xb2\x19\x03\x30\xb8\x08\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00Y@\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xb0@\x8a\xb2\x19\x02\x18\x00\"\xde\x02\n\x06\x43\x61mera\x12U\n\nprojection\x18\x01 \x01(\x0e\x32\x39.luminary.proto.api.v0.luminarycloud.vis.CameraProjectionB\x06\x82\xb2\x19\x02 \x02\x12U\n\tdirection\x18\x02 \x01(\x0e\x32\x38.luminary.proto.api.v0.luminarycloud.vis.CameraDirectionB\x06\x82\xb2\x19\x02 \x03H\x00\x12H\n\x07look_at\x18\x03 \x01(\x0b\x32\x35.luminary.proto.api.v0.luminarycloud.vis.CameraLookAtH\x00\x12\x42\n\x04zoom\x18\x04 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x42\x0f\n\rspecificationB\x07\n\x05_zoom\"\xb2\x01\n\x17\x41nimationSettingsStatic\x12?\n\x06\x63\x61mera\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Camera\x12G\n\nresolution\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.Resolution\x12\r\n\x05label\x18\x03 \x01(\t\"\xee\x02\n\x19\x41nimationSettingsTimeStep\x12?\n\x06\x63\x61mera\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Camera\x12G\n\nresolution\x18\x04 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.Resolution\x12\x61\n\x06\x66ormat\x18\x05 \x01(\x0e\x32I.luminary.proto.api.v0.luminarycloud.vis.AnimationSettingsTimeStep.FormatB\x06\x82\xb2\x19\x02 \x02\x12\x13\n\x0bskip_frames\x18\x06 \x01(\x05\x12\r\n\x05label\x18\x07 \x01(\t\"@\n\x06\x46ormat\x12\x16\n\x12\x46ORMAT_UNSPECIFIED\x10\x00\x12\x0e\n\nFORMAT_GIF\x10\x01\x12\x0e\n\nFORMAT_MP4\x10\x02\"a\n\x0eStaticSettings\x12O\n\x05items\x18\x01 \x03(\x0b\x32@.luminary.proto.api.v0.luminarycloud.vis.AnimationSettingsStatic\"e\n\x10TimeStepSettings\x12Q\n\x05items\x18\x01 \x03(\x0b\x32\x42.luminary.proto.api.v0.luminarycloud.vis.AnimationSettingsTimeStep\"\xbe\x01\n\x13\x41nimationProperties\x12J\n\x07statics\x18\x01 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.StaticSettingsH\x00\x12O\n\ntime_steps\x18\x02 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.TimeStepSettingsH\x00\x42\n\n\x08settings\"\x8e\x02\n\x05\x46ield\x12;\n\x0cquantity_typ\x18\x01 \x01(\x0e\x32%.luminary.proto.quantity.QuantityType\x12K\n\tcomponent\x18\x02 \x01(\x0e\x32\x38.luminary.proto.api.v0.luminarycloud.vis.Field.Component\"{\n\tComponent\x12\x19\n\x15\x43OMPONENT_UNSPECIFIED\x10\x00\x12\x0f\n\x0b\x43OMPONENT_X\x10\x01\x12\x0f\n\x0b\x43OMPONENT_Y\x10\x02\x12\x0f\n\x0b\x43OMPONENT_Z\x10\x03\x12 \n\x13\x43OMPONENT_MAGNITUDE\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xe7\x01\n\x11\x44isplayAttributes\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12\x14\n\x07visible\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12O\n\x0erepresentation\x18\x03 \x01(\x0e\x32\x37.luminary.proto.api.v0.luminarycloud.vis.Representation\x12\x14\n\x07opacity\x18\x04 \x01(\x01H\x01\x88\x01\x01\x42\n\n\x08_visibleB\n\n\x08_opacity\"\x91\x01\n\x05Plane\x12\x43\n\x06origin\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x43\n\x06normal\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"\x8a\x01\n\x04\x41\x41\x42\x42\x12@\n\x03min\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12@\n\x03max\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"_\n\x05Slice\x12=\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Plane\x12\x17\n\x0fproject_vectors\x18\x02 \x01(\x08\"\\\n\x07\x43ontour\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12\x12\n\niso_values\x18\x02 \x03(\x01\"\x81\x02\n\tThreshold\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12=\n\x05range\x18\x02 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Range\x12\x1b\n\x06smooth\x18\x03 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x00\x88\x01\x01\x12\x1b\n\x06invert\x18\x04 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x01\x88\x01\x01\x12\x1b\n\x06strict\x18\x05 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x02\x88\x01\x01\x42\t\n\x07_smoothB\t\n\x07_invertB\t\n\x07_strict\"\x96\x01\n\x0eSeedRakeConfig\x12\x42\n\x05start\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12@\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"\xed\x01\n\x11SeedSurfaceConfig\x12$\n\x06offset\x18\x01 \x01(\x01\x42\x0f\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x00\x00H\x00\x88\x01\x01\x12\'\n\x12project_on_surface\x18\x02 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x01\x88\x01\x01\x12@\n\x0bsample_rate\x18\x03 \x01(\x05\x42&\x82\xb2\x19\x02\x30\n\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x02\x88\x01\x01\x12\x15\n\rsurface_names\x18\x04 \x03(\tB\t\n\x07_offsetB\x15\n\x13_project_on_surfaceB\x0e\n\x0c_sample_rate\"\xcd\x03\n\x0eSeedGridConfig\x12=\n\x08rake_res\x18\x01 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x02\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x00\x88\x01\x01\x12=\n\x08seed_res\x18\x02 \x01(\x05\x42&\x82\xb2\x19\x02\x30\n\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x12\x19\n\x0cseed_spacing\x18\x03 \x01(\x01H\x02\x88\x01\x01\x12\x19\n\x0crake_spacing\x18\x04 \x01(\x01H\x03\x88\x01\x01\x12\x43\n\x06\x63\x65nter\x18\x05 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x42\n\x05u_vec\x18\x06 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x42\n\x05v_vec\x18\x07 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3B\x0b\n\t_rake_resB\x0b\n\t_seed_resB\x0f\n\r_seed_spacingB\x0f\n\r_rake_spacing\"\x92\x04\n\x0bStreamlines\x12G\n\x04rake\x18\x01 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.SeedRakeConfigH\x00\x12M\n\x07surface\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.SeedSurfaceConfigH\x00\x12G\n\x04grid\x18\x03 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.SeedGridConfigH\x00\x12\x42\n\rn_streamlines\x18\x04 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x64\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x12\x17\n\nmax_length\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12X\n\tdirection\x18\x06 \x01(\x0e\x32=.luminary.proto.api.v0.luminarycloud.vis.StreamlinesDirectionB\x06\x82\xb2\x19\x02 \x01\x12=\n\x05\x66ield\x18\x07 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.FieldB\x0b\n\tseed_typeB\x10\n\x0e_n_streamlinesB\r\n\x0b_max_length\"\xb4\x02\n\x05Glyph\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12=\n\x08n_glyphs\x18\x02 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x64\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x12Y\n\rsampling_mode\x18\x03 \x01(\x0e\x32:.luminary.proto.api.v0.luminarycloud.vis.GlyphSamplingModeB\x06\x82\xb2\x19\x02 \x01\x12\x1b\n\x11\x66ixed_size_glyphs\x18\x04 \x01(\x01H\x00\x12\x1a\n\x10glyph_scale_size\x18\x05 \x01(\x01H\x00\x42\x0c\n\nglyph_sizeB\x0b\n\t_n_glyphs\"+\n\x12SurfaceLICGeomtery\x12\x15\n\rsurface_names\x18\x01 \x03(\t\"\x91\x01\n\x0fSurfaceLICPlane\x12=\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Plane\x12?\n\x08\x63lip_box\x18\x02 \x01(\x0b\x32-.luminary.proto.api.v0.luminarycloud.vis.AABB\"\xb6\x02\n\nSurfaceLIC\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12O\n\x08geometry\x18\x02 \x01(\x0b\x32;.luminary.proto.api.v0.luminarycloud.vis.SurfaceLICGeomteryH\x00\x12I\n\x05plane\x18\x03 \x01(\x0b\x32\x38.luminary.proto.api.v0.luminarycloud.vis.SurfaceLICPlaneH\x00\x12\x41\n\x08\x63ontrast\x18\x04 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\t\x9a\x99\x99\x99\x99\x99\xc9?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\x08@\x8a\xb2\x19\x02\x18\x00\x42\n\n\x08lic_type\"s\n\x11IntersectionCurve\x12=\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Plane\x12\x10\n\x08surfaces\x18\x02 \x03(\t\x12\r\n\x05label\x18\x03 \x01(\t\"\x1a\n\x18LineSampleMeshResolution\"\x8e\x02\n\nLineSample\x12\x42\n\x05start\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12@\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\r\n\x05label\x18\x03 \x01(\t\x12\\\n\x0fmesh_resolution\x18\x04 \x01(\x0b\x32\x41.luminary.proto.api.v0.luminarycloud.vis.LineSampleMeshResolutionH\x00\x42\r\n\x0bsample_type\"\xb9\x05\n\x06\x46ilter\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12?\n\x05slice\x18\x03 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.SliceH\x00\x12=\n\x04\x63lip\x18\x04 \x01(\x0b\x32-.luminary.proto.api.v0.luminarycloud.vis.ClipH\x00\x12\x43\n\x07\x63ontour\x18\x05 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.ContourH\x00\x12G\n\tthreshold\x18\x07 \x01(\x0b\x32\x32.luminary.proto.api.v0.luminarycloud.vis.ThresholdH\x00\x12K\n\x0bstreamlines\x18\x08 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.StreamlinesH\x00\x12?\n\x05glyph\x18\t \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.GlyphH\x00\x12J\n\x0bsurface_lic\x18\n \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.SurfaceLICH\x00\x12X\n\x12intersection_curve\x18\x0b \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.IntersectionCurveH\x00\x12J\n\x0bline_sample\x18\x0c \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.LineSampleH\x00\x42\x07\n\x05value\"\x18\n\nMeshEntity\x12\n\n\x02id\x18\x01 \x01(\t\"3\n\x10SimulationEntity\x12\n\n\x02id\x18\x01 \x01(\t\x12\x13\n\x0bsolution_id\x18\x02 \x01(\t\"9\n\x0eGeometryEntity\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1b\n\x13geometry_version_id\x18\x02 \x01(\t\"\xfc\x01\n\rExtractEntity\x12\x43\n\x04mesh\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.MeshEntityH\x00\x12O\n\nsimulation\x18\x02 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.SimulationEntityH\x00\x12K\n\x08geometry\x18\x03 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.GeometryEntityH\x00\x42\x08\n\x06\x65ntity\"!\n\x05Range\x12\x0b\n\x03min\x18\x01 \x01(\x01\x12\x0b\n\x03max\x18\x02 \x01(\x01\"\xc4\x0b\n\x08\x43olorMap\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12K\n\x04name\x18\x02 \x01(\x0e\x32\x35.luminary.proto.api.v0.luminarycloud.vis.ColorMapNameB\x06\x82\xb2\x19\x02 \x03\x12\x42\n\x05range\x18\x03 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.RangeH\x02\x88\x01\x01\x12\x1c\n\x07visible\x18\x04 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x03\x88\x01\x01\x12\x1f\n\ndiscretize\x18\x05 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x04\x88\x01\x01\x12=\n\x08n_colors\x18\x06 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x08\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00@\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00p@\x8a\xb2\x19\x02\x18\x00H\x05\x88\x01\x01\x12i\n\x12\x61utomatic_location\x18\x07 \x01(\x0e\x32\x43.luminary.proto.api.v0.luminarycloud.vis.ColorMap.AutomaticLocationB\x06\x82\xb2\x19\x02 \x01H\x00\x12\x66\n\x1alower_left_anchor_location\x18\x08 \x01(\x0b\x32@.luminary.proto.api.v0.luminarycloud.vis.ColorMap.AnchorLocationH\x00\x12U\n\x0e\x61utomatic_tick\x18\n \x01(\x0b\x32;.luminary.proto.api.v0.luminarycloud.vis.ColorMap.AutomaticH\x01\x12Y\n\x11min_max_only_tick\x18\x0b \x01(\x0b\x32<.luminary.proto.api.v0.luminarycloud.vis.ColorMap.MinMaxOnlyH\x01\x12G\n\ttext_size\x18\x11 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x42@\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00Y@\x8a\xb2\x19\x02\x18\x00H\x06\x88\x01\x01\x12\x1f\n\nhorizontal\x18\x12 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x07\x88\x01\x01\x12\x43\n\x05width\x18\x13 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\xfc\xa9\xf1\xd2Mb\x80?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x08\x88\x01\x01\x12\x44\n\x06height\x18\x14 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\xbaI\x0c\x02+\x87\x96?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\t\x88\x01\x01\x1a\x9e\x01\n\x0e\x41nchorLocation\x12?\n\x01x\x18\x01 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\tq=\n\xd7\xa3p\xed?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x00\x88\x01\x01\x12?\n\x01y\x18\x02 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\xe1z\x14\xaeG\xe1\xda?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x42\x04\n\x02_xB\x04\n\x02_y\x1a\x0b\n\tAutomatic\x1a\x0c\n\nMinMaxOnly\"\xad\x01\n\x11\x41utomaticLocation\x12\"\n\x1e\x41UTOMATIC_LOCATION_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41UTOMATIC_LOCATION_RIGHT\x10\x01\x12\x1b\n\x17\x41UTOMATIC_LOCATION_LEFT\x10\x02\x12\x1d\n\x19\x41UTOMATIC_LOCATION_BOTTOM\x10\x03\x12\x1a\n\x16\x41UTOMATIC_LOCATION_TOP\x10\x04\x42\n\n\x08locationB\x14\n\x12tick_specificationB\x08\n\x06_rangeB\n\n\x08_visibleB\r\n\x0b_discretizeB\x0b\n\t_n_colorsB\x0c\n\n_text_sizeB\r\n\x0b_horizontalB\x08\n\x06_widthB\t\n\x07_height\"\xbb\x01\n\x05\x43olor\x12+\n\x01r\x18\x01 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\x12+\n\x01g\x18\x02 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\x12+\n\x01\x62\x18\x03 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\x12+\n\x01\x61\x18\x04 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\"e\n\x14\x42\x61\x63kgroundProperties\x12?\n\x05\x63olor\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.ColorH\x00\x42\x0c\n\nproperties\";\n\x0fTriadProperties\x12\x1c\n\x07visible\x18\x01 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x00\x88\x01\x01\x42\n\n\x08_visible\"(\n\x11\x46ilterConnections\x12\x13\n\x0b\x63hildren_id\x18\x01 \x03(\t\">\n\x12\x41xesGridProperties\x12\x1c\n\x07visible\x18\x01 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x00\x88\x01\x01\x42\n\n\x08_visible\"\x8b\n\n\x0b\x45xtractSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12K\n\x0b\x65ntity_type\x18\x03 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractEntity\x12Y\n\x14\x61xes_grid_properties\x18\x04 \x01(\x0b\x32;.luminary.proto.api.v0.luminarycloud.vis.AxesGridProperties\x12@\n\x07\x66ilters\x18\x05 \x03(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Filter\x12g\n\x12\x66ilter_connections\x18\x06 \x03(\x0b\x32K.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec.FilterConnectionsEntry\x12]\n\x19global_display_attributes\x18\x07 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.DisplayAttributes\x12g\n\x12\x64isplay_attributes\x18\x08 \x03(\x0b\x32K.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec.DisplayAttributesEntry\x12\x45\n\ncolor_maps\x18\t \x03(\x0b\x32\x31.luminary.proto.api.v0.luminarycloud.vis.ColorMap\x12Z\n\x14\x61nimation_properties\x18\n \x01(\x0b\x32<.luminary.proto.api.v0.luminarycloud.vis.AnimationProperties\x12R\n\x10triad_properties\x18\x0b \x01(\x0b\x32\x38.luminary.proto.api.v0.luminarycloud.vis.TriadProperties\x12\x61\n\x15\x62\x61\x63kground_properties\x18\x0c \x01(\x0b\x32=.luminary.proto.api.v0.luminarycloud.vis.BackgroundPropertiesH\x00\x88\x01\x01\x12 \n\x13supersampling_ratio\x18\r \x01(\x05H\x01\x88\x01\x01\x12\x16\n\tdata_only\x18\x0e \x01(\x08H\x02\x88\x01\x01\x1at\n\x16\x46ilterConnectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.FilterConnections:\x02\x38\x01\x1at\n\x16\x44isplayAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.DisplayAttributes:\x02\x38\x01\x42\x18\n\x16_background_propertiesB\x16\n\x14_supersampling_ratioB\x0c\n\n_data_only\"n\n\x14\x43reateExtractRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x42\n\x04spec\x18\x02 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec\"\x9c\x01\n\x07\x45xtract\x12\x12\n\nextract_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x12\n\nproject_id\x18\x04 \x01(\t\x12\x46\n\x06status\x18\x05 \x01(\x0e\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractStatus\"\xd5\x01\n\x03\x42ox\x12\x43\n\x06\x63\x65nter\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x44\n\x07lengths\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x43\n\x06\x61ngles\x18\x03 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"\xe9\x01\n\x04\x43lip\x12?\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.PlaneH\x00\x12;\n\x03\x62ox\x18\x02 \x01(\x0b\x32,.luminary.proto.api.v0.luminarycloud.vis.BoxH\x00\x12\x1d\n\x08inverted\x18\x05 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x01\x88\x01\x01\x12\x1b\n\x06smooth\x18\x06 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x02\x88\x01\x01\x42\x0f\n\rclip_functionB\x0b\n\t_invertedB\t\n\x07_smooth\"Z\n\x15\x43reateExtractResponse\x12\x41\n\x07\x65xtract\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.Extract\"W\n\x12GetExtractResponse\x12\x41\n\x07\x65xtract\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.Extract\"\\\n\x16GetExtractSpecResponse\x12\x42\n\x04spec\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec\";\n\x11GetExtractRequest\x12\x12\n\nextract_id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\"@\n\x16\x44ownloadExtractRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x12\n\nextract_id\x18\x02 \x01(\t\"Y\n\x06Images\x12?\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\x12\x0e\n\x06labels\x18\x02 \x03(\t\"\x9f\x01\n\x17\x44ownloadExtractResponse\x12?\n\x06images\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Images\x12\x43\n\tline_data\x18\x02 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"\x84\x01\n\x13ListExtractsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x46\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractEntity\x12\x11\n\tdata_only\x18\x03 \x01(\x08\"Z\n\x14ListExtractsResponse\x12\x42\n\x08\x65xtracts\x18\x01 \x03(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.Extract\">\n\x14\x44\x65leteExtractRequest\x12\x12\n\nextract_id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\"\x17\n\x15\x44\x65leteExtractResponse\"\xa4\x03\n\x18GetRenderDataUrlsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x46\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractEntity\x12@\n\x07\x66ilters\x18\x03 \x03(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Filter\x12t\n\x12\x66ilter_connections\x18\x04 \x03(\x0b\x32X.luminary.proto.api.v0.luminarycloud.vis.GetRenderDataUrlsRequest.FilterConnectionsEntry\x1at\n\x16\x46ilterConnectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.FilterConnections:\x02\x38\x01\"j\n\x0eRenderDataUrls\x12\x12\n\nfilter_ids\x18\x01 \x03(\t\x12\x44\n\ndata_files\x18\x03 \x03(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"\xa2\x01\n\x19GetRenderDataUrlsResponse\x12\x1c\n\x0fworkspace_state\x18\x01 \x01(\tH\x00\x88\x01\x01\x12J\n\x04urls\x18\x02 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.RenderDataUrlsH\x01\x88\x01\x01\x42\x12\n\x10_workspace_stateB\x07\n\x05_urls\"~\n\x19ListSolutionFieldsRequest\x12M\n\nsimulation\x18\x01 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.SimulationEntity\x12\x12\n\nproject_id\x18\x02 \x01(\t\"T\n\x17ListSolutionFieldsReply\x12\x39\n\nquantities\x18\x01 \x03(\x0e\x32%.luminary.proto.quantity.QuantityType\".\n\x0b\x43\x61meraEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\tcamera_id\x18\x02 \x01(\x03\"(\n\x12ListCamerasRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"X\n\x10ListCamerasReply\x12\x44\n\x06\x63\x61mera\x18\x01 \x03(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.CameraEntry\"n\n\x10GetCameraRequest\x12\x11\n\tcamera_id\x18\x01 \x01(\x03\x12G\n\nresolution\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.Resolution\"Q\n\x0eGetCameraReply\x12?\n\x06\x63\x61mera\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Camera\"\x9e\x03\n\x0fLineDataExtract\x12R\n\x05lines\x18\x01 \x03(\x0b\x32\x43.luminary.proto.api.v0.luminarycloud.vis.LineDataExtract.LinesEntry\x12T\n\x06labels\x18\x02 \x03(\x0b\x32\x44.luminary.proto.api.v0.luminarycloud.vis.LineDataExtract.LabelsEntry\x1a\x44\n\x05Table\x12;\n\x0blines_table\x18\x01 \x03(\x0b\x32&.luminary.proto.table.RectilinearTable\x1al\n\nLinesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.luminary.proto.api.v0.luminarycloud.vis.LineDataExtract.Table:\x02\x38\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"h\n\x0bRangeEntity\x12O\n\nsimulation\x18\x01 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.SimulationEntityH\x00\x42\x08\n\x06\x65ntity\"\xe8\x01\n\x11RangeQueryRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x44\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.RangeEntity\x12T\n\x11\x66ield_association\x18\x03 \x01(\x0e\x32\x39.luminary.proto.api.v0.luminarycloud.vis.FieldAssociation\x12#\n\x13include_only_volume\x18\x04 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00\"\x99\x01\n\x0bRangeResult\x12=\n\x05range\x18\x01 \x03(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Range\x12\x37\n\x08quantity\x18\x02 \x01(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x12\n\nfield_name\x18\x03 \x01(\t\"V\n\x0fRangeQueryReply\x12\x43\n\x05range\x18\x01 \x03(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.RangeResult*\x82\x01\n\x0f\x43\x61meraDirection\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0e\n\nX_POSITIVE\x10\x01\x12\x0e\n\nY_POSITIVE\x10\x02\x12\x0e\n\nZ_POSITIVE\x10\x03\x12\x0e\n\nX_NEGATIVE\x10\x04\x12\x0e\n\nY_NEGATIVE\x10\x05\x12\x0e\n\nZ_NEGATIVE\x10\x06*5\n\x10\x43\x61meraProjection\x12\x10\n\x0cORTHOGRAPHIC\x10\x00\x12\x0f\n\x0bPERSPECTIVE\x10\x01*P\n\x0eRepresentation\x12\x0b\n\x07SURFACE\x10\x00\x12\x16\n\x12SURFACE_WITH_EDGES\x10\x01\x12\r\n\tWIREFRAME\x10\x02\x12\n\n\x06POINTS\x10\x03*\xa4\x01\n\x14StreamlinesDirection\x12%\n!STREAMLINES_DIRECTION_UNSPECIFIED\x10\x00\x12!\n\x1dSTREAMLINES_DIRECTION_FORWARD\x10\x01\x12\"\n\x1eSTREAMLINES_DIRECTION_BACKWARD\x10\x02\x12\x1e\n\x1aSTREAMLINES_DIRECTION_BOTH\x10\x03*[\n\x11GlyphSamplingMode\x12#\n\x1fGLYPH_SAMPLING_MODE_UNSPECIFIED\x10\x00\x12!\n\x1dGLYPH_SAMPLING_MODE_EVERY_NTH\x10\x01*\xea\x01\n\x0c\x43olorMapName\x12\x1e\n\x1a\x43OLOR_MAP_NAME_UNSPECIFIED\x10\x00\x12\x1a\n\x16\x43OLOR_MAP_NAME_VIRIDIS\x10\x01\x12\x1f\n\x1b\x43OLOR_MAP_NAME_COOL_TO_WARM\x10\x02\x12\x18\n\x14\x43OLOR_MAP_NAME_TURBO\x10\x03\x12\x16\n\x12\x43OLOR_MAP_NAME_JET\x10\x04\x12\x17\n\x13\x43OLOR_MAP_NAME_WAVE\x10\x05\x12\x17\n\x13\x43OLOR_MAP_NAME_XRAY\x10\x06\x12\x19\n\x15\x43OLOR_MAP_NAME_PLASMA\x10\x07*C\n\rExtractStatus\x12\x0b\n\x07Invalid\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\r\n\tCompleted\x10\x02\x12\n\n\x06\x46\x61iled\x10\x03*h\n\x14RenderDataUrlsStatus\x12\x19\n\x15RenderDataUrlsInvalid\x10\x00\x12\x1b\n\x17RenderDataUrlsCompleted\x10\x02\x12\x18\n\x14RenderDataUrlsFailed\x10\x03*p\n\x10\x46ieldAssociation\x12!\n\x1d\x46IELD_ASSOCIATION_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x46IELD_ASSOCIATION_CELLS\x10\x01\x12\x1c\n\x18\x46IELD_ASSOCIATION_POINTS\x10\x02\x32\xcd\x0c\n\rVisAPIService\x12\x90\x01\n\rCreateExtract\x12=.luminary.proto.api.v0.luminarycloud.vis.CreateExtractRequest\x1a>.luminary.proto.api.v0.luminarycloud.vis.CreateExtractResponse\"\x00\x12\x87\x01\n\nGetExtract\x12:.luminary.proto.api.v0.luminarycloud.vis.GetExtractRequest\x1a;.luminary.proto.api.v0.luminarycloud.vis.GetExtractResponse\"\x00\x12\x8f\x01\n\x0eGetExtractSpec\x12:.luminary.proto.api.v0.luminarycloud.vis.GetExtractRequest\x1a?.luminary.proto.api.v0.luminarycloud.vis.GetExtractSpecResponse\"\x00\x12\x96\x01\n\x0f\x44ownloadExtract\x12?.luminary.proto.api.v0.luminarycloud.vis.DownloadExtractRequest\x1a@.luminary.proto.api.v0.luminarycloud.vis.DownloadExtractResponse\"\x00\x12\x8d\x01\n\x0cListExtracts\x12<.luminary.proto.api.v0.luminarycloud.vis.ListExtractsRequest\x1a=.luminary.proto.api.v0.luminarycloud.vis.ListExtractsResponse\"\x00\x12\x90\x01\n\rDeleteExtract\x12=.luminary.proto.api.v0.luminarycloud.vis.DeleteExtractRequest\x1a>.luminary.proto.api.v0.luminarycloud.vis.DeleteExtractResponse\"\x00\x12\x9c\x01\n\x11GetRenderDataUrls\x12\x41.luminary.proto.api.v0.luminarycloud.vis.GetRenderDataUrlsRequest\x1a\x42.luminary.proto.api.v0.luminarycloud.vis.GetRenderDataUrlsResponse\"\x00\x12\x9c\x01\n\x12ListSolutionFields\x12\x42.luminary.proto.api.v0.luminarycloud.vis.ListSolutionFieldsRequest\x1a@.luminary.proto.api.v0.luminarycloud.vis.ListSolutionFieldsReply\"\x00\x12\x87\x01\n\x0bListCameras\x12;.luminary.proto.api.v0.luminarycloud.vis.ListCamerasRequest\x1a\x39.luminary.proto.api.v0.luminarycloud.vis.ListCamerasReply\"\x00\x12\x81\x01\n\tGetCamera\x12\x39.luminary.proto.api.v0.luminarycloud.vis.GetCameraRequest\x1a\x37.luminary.proto.api.v0.luminarycloud.vis.GetCameraReply\"\x00\x12\x84\x01\n\nRangeQuery\x12:.luminary.proto.api.v0.luminarycloud.vis.RangeQueryRequest\x1a\x38.luminary.proto.api.v0.luminarycloud.vis.RangeQueryReply\"\x00\x42\x37Z5luminarycloud.com/core/proto/api/v0/luminarycloud/visb\x06proto3')
23
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n(proto/api/v0/luminarycloud/vis/vis.proto\x12\'luminary.proto.api.v0.luminarycloud.vis\x1a\x1cgoogle/api/annotations.proto\x1a\x1bproto/options/options.proto\x1a\x1dproto/quantity/quantity.proto\x1a\x17proto/table/table.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\"=\n\x03Pan\x12\x1a\n\x01x\x18\x01 \x01(\x01\x42\x0f\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x12\x1a\n\x01y\x18\x02 \x01(\x01\x42\x0f\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x00\x00\"\xa4\x02\n\x0c\x43\x61meraLookAt\x12\x45\n\x08position\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x44\n\x07look_at\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12?\n\x02up\x18\x03 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12>\n\x03pan\x18\x04 \x01(\x0b\x32,.luminary.proto.api.v0.luminarycloud.vis.PanH\x00\x88\x01\x01\x42\x06\n\x04_pan\"}\n\nResolution\x12\x36\n\x05width\x18\x01 \x01(\x05\x42\'\x82\xb2\x19\x03\x30\x80\x0f\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00Y@\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xb0@\x8a\xb2\x19\x02\x18\x00\x12\x37\n\x06height\x18\x02 \x01(\x05\x42\'\x82\xb2\x19\x03\x30\xb8\x08\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00Y@\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xb0@\x8a\xb2\x19\x02\x18\x00\"\xde\x02\n\x06\x43\x61mera\x12U\n\nprojection\x18\x01 \x01(\x0e\x32\x39.luminary.proto.api.v0.luminarycloud.vis.CameraProjectionB\x06\x82\xb2\x19\x02 \x02\x12U\n\tdirection\x18\x02 \x01(\x0e\x32\x38.luminary.proto.api.v0.luminarycloud.vis.CameraDirectionB\x06\x82\xb2\x19\x02 \x03H\x00\x12H\n\x07look_at\x18\x03 \x01(\x0b\x32\x35.luminary.proto.api.v0.luminarycloud.vis.CameraLookAtH\x00\x12\x42\n\x04zoom\x18\x04 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x42\x0f\n\rspecificationB\x07\n\x05_zoom\"\xb2\x01\n\x17\x41nimationSettingsStatic\x12?\n\x06\x63\x61mera\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Camera\x12G\n\nresolution\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.Resolution\x12\r\n\x05label\x18\x03 \x01(\t\"\xee\x02\n\x19\x41nimationSettingsTimeStep\x12?\n\x06\x63\x61mera\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Camera\x12G\n\nresolution\x18\x04 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.Resolution\x12\x61\n\x06\x66ormat\x18\x05 \x01(\x0e\x32I.luminary.proto.api.v0.luminarycloud.vis.AnimationSettingsTimeStep.FormatB\x06\x82\xb2\x19\x02 \x02\x12\x13\n\x0bskip_frames\x18\x06 \x01(\x05\x12\r\n\x05label\x18\x07 \x01(\t\"@\n\x06\x46ormat\x12\x16\n\x12\x46ORMAT_UNSPECIFIED\x10\x00\x12\x0e\n\nFORMAT_GIF\x10\x01\x12\x0e\n\nFORMAT_MP4\x10\x02\"a\n\x0eStaticSettings\x12O\n\x05items\x18\x01 \x03(\x0b\x32@.luminary.proto.api.v0.luminarycloud.vis.AnimationSettingsStatic\"e\n\x10TimeStepSettings\x12Q\n\x05items\x18\x01 \x03(\x0b\x32\x42.luminary.proto.api.v0.luminarycloud.vis.AnimationSettingsTimeStep\"\xbe\x01\n\x13\x41nimationProperties\x12J\n\x07statics\x18\x01 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.StaticSettingsH\x00\x12O\n\ntime_steps\x18\x02 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.TimeStepSettingsH\x00\x42\n\n\x08settings\"\x8e\x02\n\x05\x46ield\x12;\n\x0cquantity_typ\x18\x01 \x01(\x0e\x32%.luminary.proto.quantity.QuantityType\x12K\n\tcomponent\x18\x02 \x01(\x0e\x32\x38.luminary.proto.api.v0.luminarycloud.vis.Field.Component\"{\n\tComponent\x12\x19\n\x15\x43OMPONENT_UNSPECIFIED\x10\x00\x12\x0f\n\x0b\x43OMPONENT_X\x10\x01\x12\x0f\n\x0b\x43OMPONENT_Y\x10\x02\x12\x0f\n\x0b\x43OMPONENT_Z\x10\x03\x12 \n\x13\x43OMPONENT_MAGNITUDE\x10\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xe7\x01\n\x11\x44isplayAttributes\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12\x14\n\x07visible\x18\x02 \x01(\x08H\x00\x88\x01\x01\x12O\n\x0erepresentation\x18\x03 \x01(\x0e\x32\x37.luminary.proto.api.v0.luminarycloud.vis.Representation\x12\x14\n\x07opacity\x18\x04 \x01(\x01H\x01\x88\x01\x01\x42\n\n\x08_visibleB\n\n\x08_opacity\"\x91\x01\n\x05Plane\x12\x43\n\x06origin\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x43\n\x06normal\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"\x8a\x01\n\x04\x41\x41\x42\x42\x12@\n\x03min\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12@\n\x03max\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"_\n\x05Slice\x12=\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Plane\x12\x17\n\x0fproject_vectors\x18\x02 \x01(\x08\"\xfa\x01\n\nMultiSlice\x12K\n\x0estart_position\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12I\n\x0c\x65nd_position\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x15\n\x08n_slices\x18\x03 \x01(\x05H\x00\x88\x01\x01\x12\x1c\n\x0fproject_vectors\x18\x04 \x01(\x08H\x01\x88\x01\x01\x42\x0b\n\t_n_slicesB\x12\n\x10_project_vectors\"\\\n\x07\x43ontour\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12\x12\n\niso_values\x18\x02 \x03(\x01\"\x81\x02\n\tThreshold\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12=\n\x05range\x18\x02 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Range\x12\x1b\n\x06smooth\x18\x03 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x00\x88\x01\x01\x12\x1b\n\x06invert\x18\x04 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x01\x88\x01\x01\x12\x1b\n\x06strict\x18\x05 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x02\x88\x01\x01\x42\t\n\x07_smoothB\t\n\x07_invertB\t\n\x07_strict\"\x96\x01\n\x0eSeedRakeConfig\x12\x42\n\x05start\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12@\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"\xed\x01\n\x11SeedSurfaceConfig\x12$\n\x06offset\x18\x01 \x01(\x01\x42\x0f\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x00\x00H\x00\x88\x01\x01\x12\'\n\x12project_on_surface\x18\x02 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x01\x88\x01\x01\x12@\n\x0bsample_rate\x18\x03 \x01(\x05\x42&\x82\xb2\x19\x02\x30\n\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x02\x88\x01\x01\x12\x15\n\rsurface_names\x18\x04 \x03(\tB\t\n\x07_offsetB\x15\n\x13_project_on_surfaceB\x0e\n\x0c_sample_rate\"\xcd\x03\n\x0eSeedGridConfig\x12=\n\x08rake_res\x18\x01 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x02\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x00\x88\x01\x01\x12=\n\x08seed_res\x18\x02 \x01(\x05\x42&\x82\xb2\x19\x02\x30\n\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x12\x19\n\x0cseed_spacing\x18\x03 \x01(\x01H\x02\x88\x01\x01\x12\x19\n\x0crake_spacing\x18\x04 \x01(\x01H\x03\x88\x01\x01\x12\x43\n\x06\x63\x65nter\x18\x05 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x42\n\x05u_vec\x18\x06 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x42\n\x05v_vec\x18\x07 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3B\x0b\n\t_rake_resB\x0b\n\t_seed_resB\x0f\n\r_seed_spacingB\x0f\n\r_rake_spacing\"\x92\x04\n\x0bStreamlines\x12G\n\x04rake\x18\x01 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.SeedRakeConfigH\x00\x12M\n\x07surface\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.SeedSurfaceConfigH\x00\x12G\n\x04grid\x18\x03 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.SeedGridConfigH\x00\x12\x42\n\rn_streamlines\x18\x04 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x64\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x12\x17\n\nmax_length\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12X\n\tdirection\x18\x06 \x01(\x0e\x32=.luminary.proto.api.v0.luminarycloud.vis.StreamlinesDirectionB\x06\x82\xb2\x19\x02 \x01\x12=\n\x05\x66ield\x18\x07 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.FieldB\x0b\n\tseed_typeB\x10\n\x0e_n_streamlinesB\r\n\x0b_max_length\"\xb4\x02\n\x05Glyph\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12=\n\x08n_glyphs\x18\x02 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x64\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00@\x8f@\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x12Y\n\rsampling_mode\x18\x03 \x01(\x0e\x32:.luminary.proto.api.v0.luminarycloud.vis.GlyphSamplingModeB\x06\x82\xb2\x19\x02 \x01\x12\x1b\n\x11\x66ixed_size_glyphs\x18\x04 \x01(\x01H\x00\x12\x1a\n\x10glyph_scale_size\x18\x05 \x01(\x01H\x00\x42\x0c\n\nglyph_sizeB\x0b\n\t_n_glyphs\"+\n\x12SurfaceLICGeomtery\x12\x15\n\rsurface_names\x18\x01 \x03(\t\"\x91\x01\n\x0fSurfaceLICPlane\x12=\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Plane\x12?\n\x08\x63lip_box\x18\x02 \x01(\x0b\x32-.luminary.proto.api.v0.luminarycloud.vis.AABB\"\xb6\x02\n\nSurfaceLIC\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12O\n\x08geometry\x18\x02 \x01(\x0b\x32;.luminary.proto.api.v0.luminarycloud.vis.SurfaceLICGeomteryH\x00\x12I\n\x05plane\x18\x03 \x01(\x0b\x32\x38.luminary.proto.api.v0.luminarycloud.vis.SurfaceLICPlaneH\x00\x12\x41\n\x08\x63ontrast\x18\x04 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\t\t\x9a\x99\x99\x99\x99\x99\xc9?\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\x08@\x8a\xb2\x19\x02\x18\x00\x42\n\n\x08lic_type\"s\n\x11IntersectionCurve\x12=\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Plane\x12\x10\n\x08surfaces\x18\x02 \x03(\t\x12\r\n\x05label\x18\x03 \x01(\t\"\x1a\n\x18LineSampleMeshResolution\"\x8e\x02\n\nLineSample\x12\x42\n\x05start\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12@\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\r\n\x05label\x18\x03 \x01(\t\x12\\\n\x0fmesh_resolution\x18\x04 \x01(\x0b\x32\x41.luminary.proto.api.v0.luminarycloud.vis.LineSampleMeshResolutionH\x00\x42\r\n\x0bsample_type\"\x85\x06\n\x06\x46ilter\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12?\n\x05slice\x18\x03 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.SliceH\x00\x12=\n\x04\x63lip\x18\x04 \x01(\x0b\x32-.luminary.proto.api.v0.luminarycloud.vis.ClipH\x00\x12\x43\n\x07\x63ontour\x18\x05 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.ContourH\x00\x12G\n\tthreshold\x18\x07 \x01(\x0b\x32\x32.luminary.proto.api.v0.luminarycloud.vis.ThresholdH\x00\x12K\n\x0bstreamlines\x18\x08 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.StreamlinesH\x00\x12?\n\x05glyph\x18\t \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.GlyphH\x00\x12J\n\x0bsurface_lic\x18\n \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.SurfaceLICH\x00\x12X\n\x12intersection_curve\x18\x0b \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.IntersectionCurveH\x00\x12J\n\x0bline_sample\x18\x0c \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.LineSampleH\x00\x12J\n\x0bmulti_slice\x18\r \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.MultiSliceH\x00\x42\x07\n\x05value\"\x18\n\nMeshEntity\x12\n\n\x02id\x18\x01 \x01(\t\"3\n\x10SimulationEntity\x12\n\n\x02id\x18\x01 \x01(\t\x12\x13\n\x0bsolution_id\x18\x02 \x01(\t\"9\n\x0eGeometryEntity\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1b\n\x13geometry_version_id\x18\x02 \x01(\t\"\xfc\x01\n\rExtractEntity\x12\x43\n\x04mesh\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.MeshEntityH\x00\x12O\n\nsimulation\x18\x02 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.SimulationEntityH\x00\x12K\n\x08geometry\x18\x03 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.GeometryEntityH\x00\x42\x08\n\x06\x65ntity\"!\n\x05Range\x12\x0b\n\x03min\x18\x01 \x01(\x01\x12\x0b\n\x03max\x18\x02 \x01(\x01\"\xc4\x0b\n\x08\x43olorMap\x12=\n\x05\x66ield\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Field\x12K\n\x04name\x18\x02 \x01(\x0e\x32\x35.luminary.proto.api.v0.luminarycloud.vis.ColorMapNameB\x06\x82\xb2\x19\x02 \x03\x12\x42\n\x05range\x18\x03 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.RangeH\x02\x88\x01\x01\x12\x1c\n\x07visible\x18\x04 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x03\x88\x01\x01\x12\x1f\n\ndiscretize\x18\x05 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x04\x88\x01\x01\x12=\n\x08n_colors\x18\x06 \x01(\x05\x42&\x82\xb2\x19\x02\x30\x08\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00@\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00p@\x8a\xb2\x19\x02\x18\x00H\x05\x88\x01\x01\x12i\n\x12\x61utomatic_location\x18\x07 \x01(\x0e\x32\x43.luminary.proto.api.v0.luminarycloud.vis.ColorMap.AutomaticLocationB\x06\x82\xb2\x19\x02 \x01H\x00\x12\x66\n\x1alower_left_anchor_location\x18\x08 \x01(\x0b\x32@.luminary.proto.api.v0.luminarycloud.vis.ColorMap.AnchorLocationH\x00\x12U\n\x0e\x61utomatic_tick\x18\n \x01(\x0b\x32;.luminary.proto.api.v0.luminarycloud.vis.ColorMap.AutomaticH\x01\x12Y\n\x11min_max_only_tick\x18\x0b \x01(\x0b\x32<.luminary.proto.api.v0.luminarycloud.vis.ColorMap.MinMaxOnlyH\x01\x12G\n\ttext_size\x18\x11 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\x00\x00\x00\x00\x00\x00\x42@\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00Y@\x8a\xb2\x19\x02\x18\x00H\x06\x88\x01\x01\x12\x1f\n\nhorizontal\x18\x12 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x07\x88\x01\x01\x12\x43\n\x05width\x18\x13 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\xfc\xa9\xf1\xd2Mb\x80?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x08\x88\x01\x01\x12\x44\n\x06height\x18\x14 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\xbaI\x0c\x02+\x87\x96?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\t\x88\x01\x01\x1a\x9e\x01\n\x0e\x41nchorLocation\x12?\n\x01x\x18\x01 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\tq=\n\xd7\xa3p\xed?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x00\x88\x01\x01\x12?\n\x01y\x18\x02 \x01(\x01\x42/\x82\xb2\x19\x0b\n\t\t\xe1z\x14\xaeG\xe1\xda?\x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00H\x01\x88\x01\x01\x42\x04\n\x02_xB\x04\n\x02_y\x1a\x0b\n\tAutomatic\x1a\x0c\n\nMinMaxOnly\"\xad\x01\n\x11\x41utomaticLocation\x12\"\n\x1e\x41UTOMATIC_LOCATION_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41UTOMATIC_LOCATION_RIGHT\x10\x01\x12\x1b\n\x17\x41UTOMATIC_LOCATION_LEFT\x10\x02\x12\x1d\n\x19\x41UTOMATIC_LOCATION_BOTTOM\x10\x03\x12\x1a\n\x16\x41UTOMATIC_LOCATION_TOP\x10\x04\x42\n\n\x08locationB\x14\n\x12tick_specificationB\x08\n\x06_rangeB\n\n\x08_visibleB\r\n\x0b_discretizeB\x0b\n\t_n_colorsB\x0c\n\n_text_sizeB\r\n\x0b_horizontalB\x08\n\x06_widthB\t\n\x07_height\"\xbb\x01\n\x05\x43olor\x12+\n\x01r\x18\x01 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\x12+\n\x01g\x18\x02 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\x12+\n\x01\x62\x18\x03 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\x12+\n\x01\x61\x18\x04 \x01(\x01\x42 \x8a\xb2\x19\t\t\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xb2\x19\t\x11\x00\x00\x00\x00\x00\x00\xf0?\x8a\xb2\x19\x02\x18\x00\"e\n\x14\x42\x61\x63kgroundProperties\x12?\n\x05\x63olor\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.ColorH\x00\x42\x0c\n\nproperties\";\n\x0fTriadProperties\x12\x1c\n\x07visible\x18\x01 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x00\x88\x01\x01\x42\n\n\x08_visible\"(\n\x11\x46ilterConnections\x12\x13\n\x0b\x63hildren_id\x18\x01 \x03(\t\">\n\x12\x41xesGridProperties\x12\x1c\n\x07visible\x18\x01 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x00\x88\x01\x01\x42\n\n\x08_visible\"\x8b\n\n\x0b\x45xtractSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12K\n\x0b\x65ntity_type\x18\x03 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractEntity\x12Y\n\x14\x61xes_grid_properties\x18\x04 \x01(\x0b\x32;.luminary.proto.api.v0.luminarycloud.vis.AxesGridProperties\x12@\n\x07\x66ilters\x18\x05 \x03(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Filter\x12g\n\x12\x66ilter_connections\x18\x06 \x03(\x0b\x32K.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec.FilterConnectionsEntry\x12]\n\x19global_display_attributes\x18\x07 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.DisplayAttributes\x12g\n\x12\x64isplay_attributes\x18\x08 \x03(\x0b\x32K.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec.DisplayAttributesEntry\x12\x45\n\ncolor_maps\x18\t \x03(\x0b\x32\x31.luminary.proto.api.v0.luminarycloud.vis.ColorMap\x12Z\n\x14\x61nimation_properties\x18\n \x01(\x0b\x32<.luminary.proto.api.v0.luminarycloud.vis.AnimationProperties\x12R\n\x10triad_properties\x18\x0b \x01(\x0b\x32\x38.luminary.proto.api.v0.luminarycloud.vis.TriadProperties\x12\x61\n\x15\x62\x61\x63kground_properties\x18\x0c \x01(\x0b\x32=.luminary.proto.api.v0.luminarycloud.vis.BackgroundPropertiesH\x00\x88\x01\x01\x12 \n\x13supersampling_ratio\x18\r \x01(\x05H\x01\x88\x01\x01\x12\x16\n\tdata_only\x18\x0e \x01(\x08H\x02\x88\x01\x01\x1at\n\x16\x46ilterConnectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.FilterConnections:\x02\x38\x01\x1at\n\x16\x44isplayAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.DisplayAttributes:\x02\x38\x01\x42\x18\n\x16_background_propertiesB\x16\n\x14_supersampling_ratioB\x0c\n\n_data_only\"n\n\x14\x43reateExtractRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x42\n\x04spec\x18\x02 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec\"\x9c\x01\n\x07\x45xtract\x12\x12\n\nextract_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x12\n\nproject_id\x18\x04 \x01(\t\x12\x46\n\x06status\x18\x05 \x01(\x0e\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractStatus\"\xd5\x01\n\x03\x42ox\x12\x43\n\x06\x63\x65nter\x18\x01 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x44\n\x07lengths\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x43\n\x06\x61ngles\x18\x03 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\"\xe9\x01\n\x04\x43lip\x12?\n\x05plane\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.PlaneH\x00\x12;\n\x03\x62ox\x18\x02 \x01(\x0b\x32,.luminary.proto.api.v0.luminarycloud.vis.BoxH\x00\x12\x1d\n\x08inverted\x18\x05 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00H\x01\x88\x01\x01\x12\x1b\n\x06smooth\x18\x06 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x01H\x02\x88\x01\x01\x42\x0f\n\rclip_functionB\x0b\n\t_invertedB\t\n\x07_smooth\"Z\n\x15\x43reateExtractResponse\x12\x41\n\x07\x65xtract\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.Extract\"W\n\x12GetExtractResponse\x12\x41\n\x07\x65xtract\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.Extract\"\\\n\x16GetExtractSpecResponse\x12\x42\n\x04spec\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec\";\n\x11GetExtractRequest\x12\x12\n\nextract_id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\"@\n\x16\x44ownloadExtractRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x12\n\nextract_id\x18\x02 \x01(\t\"Y\n\x06Images\x12?\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\x12\x0e\n\x06labels\x18\x02 \x03(\t\"\x9f\x01\n\x17\x44ownloadExtractResponse\x12?\n\x06images\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Images\x12\x43\n\tline_data\x18\x02 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"\x84\x01\n\x13ListExtractsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x46\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractEntity\x12\x11\n\tdata_only\x18\x03 \x01(\x08\"Z\n\x14ListExtractsResponse\x12\x42\n\x08\x65xtracts\x18\x01 \x03(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.vis.Extract\">\n\x14\x44\x65leteExtractRequest\x12\x12\n\nextract_id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\"\x17\n\x15\x44\x65leteExtractResponse\"\xa4\x03\n\x18GetRenderDataUrlsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x46\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.vis.ExtractEntity\x12@\n\x07\x66ilters\x18\x03 \x03(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Filter\x12t\n\x12\x66ilter_connections\x18\x04 \x03(\x0b\x32X.luminary.proto.api.v0.luminarycloud.vis.GetRenderDataUrlsRequest.FilterConnectionsEntry\x1at\n\x16\x46ilterConnectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.vis.FilterConnections:\x02\x38\x01\"j\n\x0eRenderDataUrls\x12\x12\n\nfilter_ids\x18\x01 \x03(\t\x12\x44\n\ndata_files\x18\x03 \x03(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"\xa2\x01\n\x19GetRenderDataUrlsResponse\x12\x1c\n\x0fworkspace_state\x18\x01 \x01(\tH\x00\x88\x01\x01\x12J\n\x04urls\x18\x02 \x01(\x0b\x32\x37.luminary.proto.api.v0.luminarycloud.vis.RenderDataUrlsH\x01\x88\x01\x01\x42\x12\n\x10_workspace_stateB\x07\n\x05_urls\"~\n\x19ListSolutionFieldsRequest\x12M\n\nsimulation\x18\x01 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.SimulationEntity\x12\x12\n\nproject_id\x18\x02 \x01(\t\"T\n\x17ListSolutionFieldsReply\x12\x39\n\nquantities\x18\x01 \x03(\x0e\x32%.luminary.proto.quantity.QuantityType\".\n\x0b\x43\x61meraEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\tcamera_id\x18\x02 \x01(\x03\"(\n\x12ListCamerasRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"X\n\x10ListCamerasReply\x12\x44\n\x06\x63\x61mera\x18\x01 \x03(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.CameraEntry\"n\n\x10GetCameraRequest\x12\x11\n\tcamera_id\x18\x01 \x01(\x03\x12G\n\nresolution\x18\x02 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.vis.Resolution\"Q\n\x0eGetCameraReply\x12?\n\x06\x63\x61mera\x18\x01 \x01(\x0b\x32/.luminary.proto.api.v0.luminarycloud.vis.Camera\"\x9e\x03\n\x0fLineDataExtract\x12R\n\x05lines\x18\x01 \x03(\x0b\x32\x43.luminary.proto.api.v0.luminarycloud.vis.LineDataExtract.LinesEntry\x12T\n\x06labels\x18\x02 \x03(\x0b\x32\x44.luminary.proto.api.v0.luminarycloud.vis.LineDataExtract.LabelsEntry\x1a\x44\n\x05Table\x12;\n\x0blines_table\x18\x01 \x03(\x0b\x32&.luminary.proto.table.RectilinearTable\x1al\n\nLinesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.luminary.proto.api.v0.luminarycloud.vis.LineDataExtract.Table:\x02\x38\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"h\n\x0bRangeEntity\x12O\n\nsimulation\x18\x01 \x01(\x0b\x32\x39.luminary.proto.api.v0.luminarycloud.vis.SimulationEntityH\x00\x42\x08\n\x06\x65ntity\"\xe8\x01\n\x11RangeQueryRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x44\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.RangeEntity\x12T\n\x11\x66ield_association\x18\x03 \x01(\x0e\x32\x39.luminary.proto.api.v0.luminarycloud.vis.FieldAssociation\x12#\n\x13include_only_volume\x18\x04 \x01(\x08\x42\x06\x82\xb2\x19\x02(\x00\"\x99\x01\n\x0bRangeResult\x12=\n\x05range\x18\x01 \x03(\x0b\x32..luminary.proto.api.v0.luminarycloud.vis.Range\x12\x37\n\x08quantity\x18\x02 \x01(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x12\n\nfield_name\x18\x03 \x01(\t\"V\n\x0fRangeQueryReply\x12\x43\n\x05range\x18\x01 \x03(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.RangeResult*\x82\x01\n\x0f\x43\x61meraDirection\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x0e\n\nX_POSITIVE\x10\x01\x12\x0e\n\nY_POSITIVE\x10\x02\x12\x0e\n\nZ_POSITIVE\x10\x03\x12\x0e\n\nX_NEGATIVE\x10\x04\x12\x0e\n\nY_NEGATIVE\x10\x05\x12\x0e\n\nZ_NEGATIVE\x10\x06*5\n\x10\x43\x61meraProjection\x12\x10\n\x0cORTHOGRAPHIC\x10\x00\x12\x0f\n\x0bPERSPECTIVE\x10\x01*P\n\x0eRepresentation\x12\x0b\n\x07SURFACE\x10\x00\x12\x16\n\x12SURFACE_WITH_EDGES\x10\x01\x12\r\n\tWIREFRAME\x10\x02\x12\n\n\x06POINTS\x10\x03*\xa4\x01\n\x14StreamlinesDirection\x12%\n!STREAMLINES_DIRECTION_UNSPECIFIED\x10\x00\x12!\n\x1dSTREAMLINES_DIRECTION_FORWARD\x10\x01\x12\"\n\x1eSTREAMLINES_DIRECTION_BACKWARD\x10\x02\x12\x1e\n\x1aSTREAMLINES_DIRECTION_BOTH\x10\x03*[\n\x11GlyphSamplingMode\x12#\n\x1fGLYPH_SAMPLING_MODE_UNSPECIFIED\x10\x00\x12!\n\x1dGLYPH_SAMPLING_MODE_EVERY_NTH\x10\x01*\xea\x01\n\x0c\x43olorMapName\x12\x1e\n\x1a\x43OLOR_MAP_NAME_UNSPECIFIED\x10\x00\x12\x1a\n\x16\x43OLOR_MAP_NAME_VIRIDIS\x10\x01\x12\x1f\n\x1b\x43OLOR_MAP_NAME_COOL_TO_WARM\x10\x02\x12\x18\n\x14\x43OLOR_MAP_NAME_TURBO\x10\x03\x12\x16\n\x12\x43OLOR_MAP_NAME_JET\x10\x04\x12\x17\n\x13\x43OLOR_MAP_NAME_WAVE\x10\x05\x12\x17\n\x13\x43OLOR_MAP_NAME_XRAY\x10\x06\x12\x19\n\x15\x43OLOR_MAP_NAME_PLASMA\x10\x07*C\n\rExtractStatus\x12\x0b\n\x07Invalid\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\r\n\tCompleted\x10\x02\x12\n\n\x06\x46\x61iled\x10\x03*h\n\x14RenderDataUrlsStatus\x12\x19\n\x15RenderDataUrlsInvalid\x10\x00\x12\x1b\n\x17RenderDataUrlsCompleted\x10\x02\x12\x18\n\x14RenderDataUrlsFailed\x10\x03*p\n\x10\x46ieldAssociation\x12!\n\x1d\x46IELD_ASSOCIATION_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x46IELD_ASSOCIATION_CELLS\x10\x01\x12\x1c\n\x18\x46IELD_ASSOCIATION_POINTS\x10\x02\x32\xcd\x0c\n\rVisAPIService\x12\x90\x01\n\rCreateExtract\x12=.luminary.proto.api.v0.luminarycloud.vis.CreateExtractRequest\x1a>.luminary.proto.api.v0.luminarycloud.vis.CreateExtractResponse\"\x00\x12\x87\x01\n\nGetExtract\x12:.luminary.proto.api.v0.luminarycloud.vis.GetExtractRequest\x1a;.luminary.proto.api.v0.luminarycloud.vis.GetExtractResponse\"\x00\x12\x8f\x01\n\x0eGetExtractSpec\x12:.luminary.proto.api.v0.luminarycloud.vis.GetExtractRequest\x1a?.luminary.proto.api.v0.luminarycloud.vis.GetExtractSpecResponse\"\x00\x12\x96\x01\n\x0f\x44ownloadExtract\x12?.luminary.proto.api.v0.luminarycloud.vis.DownloadExtractRequest\x1a@.luminary.proto.api.v0.luminarycloud.vis.DownloadExtractResponse\"\x00\x12\x8d\x01\n\x0cListExtracts\x12<.luminary.proto.api.v0.luminarycloud.vis.ListExtractsRequest\x1a=.luminary.proto.api.v0.luminarycloud.vis.ListExtractsResponse\"\x00\x12\x90\x01\n\rDeleteExtract\x12=.luminary.proto.api.v0.luminarycloud.vis.DeleteExtractRequest\x1a>.luminary.proto.api.v0.luminarycloud.vis.DeleteExtractResponse\"\x00\x12\x9c\x01\n\x11GetRenderDataUrls\x12\x41.luminary.proto.api.v0.luminarycloud.vis.GetRenderDataUrlsRequest\x1a\x42.luminary.proto.api.v0.luminarycloud.vis.GetRenderDataUrlsResponse\"\x00\x12\x9c\x01\n\x12ListSolutionFields\x12\x42.luminary.proto.api.v0.luminarycloud.vis.ListSolutionFieldsRequest\x1a@.luminary.proto.api.v0.luminarycloud.vis.ListSolutionFieldsReply\"\x00\x12\x87\x01\n\x0bListCameras\x12;.luminary.proto.api.v0.luminarycloud.vis.ListCamerasRequest\x1a\x39.luminary.proto.api.v0.luminarycloud.vis.ListCamerasReply\"\x00\x12\x81\x01\n\tGetCamera\x12\x39.luminary.proto.api.v0.luminarycloud.vis.GetCameraRequest\x1a\x37.luminary.proto.api.v0.luminarycloud.vis.GetCameraReply\"\x00\x12\x84\x01\n\nRangeQuery\x12:.luminary.proto.api.v0.luminarycloud.vis.RangeQueryRequest\x1a\x38.luminary.proto.api.v0.luminarycloud.vis.RangeQueryReply\"\x00\x42\x37Z5luminarycloud.com/core/proto/api/v0/luminarycloud/visb\x06proto3')
24
24
 
25
25
  _CAMERADIRECTION = DESCRIPTOR.enum_types_by_name['CameraDirection']
26
26
  CameraDirection = enum_type_wrapper.EnumTypeWrapper(_CAMERADIRECTION)
@@ -93,6 +93,7 @@ _DISPLAYATTRIBUTES = DESCRIPTOR.message_types_by_name['DisplayAttributes']
93
93
  _PLANE = DESCRIPTOR.message_types_by_name['Plane']
94
94
  _AABB = DESCRIPTOR.message_types_by_name['AABB']
95
95
  _SLICE = DESCRIPTOR.message_types_by_name['Slice']
96
+ _MULTISLICE = DESCRIPTOR.message_types_by_name['MultiSlice']
96
97
  _CONTOUR = DESCRIPTOR.message_types_by_name['Contour']
97
98
  _THRESHOLD = DESCRIPTOR.message_types_by_name['Threshold']
98
99
  _SEEDRAKECONFIG = DESCRIPTOR.message_types_by_name['SeedRakeConfig']
@@ -259,6 +260,13 @@ Slice = _reflection.GeneratedProtocolMessageType('Slice', (_message.Message,), {
259
260
  })
260
261
  _sym_db.RegisterMessage(Slice)
261
262
 
263
+ MultiSlice = _reflection.GeneratedProtocolMessageType('MultiSlice', (_message.Message,), {
264
+ 'DESCRIPTOR' : _MULTISLICE,
265
+ '__module__' : 'proto.api.v0.luminarycloud.vis.vis_pb2'
266
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.vis.MultiSlice)
267
+ })
268
+ _sym_db.RegisterMessage(MultiSlice)
269
+
262
270
  Contour = _reflection.GeneratedProtocolMessageType('Contour', (_message.Message,), {
263
271
  'DESCRIPTOR' : _CONTOUR,
264
272
  '__module__' : 'proto.api.v0.luminarycloud.vis.vis_pb2'
@@ -820,24 +828,24 @@ if _descriptor._USE_C_DESCRIPTORS == False:
820
828
  _LINEDATAEXTRACT_LABELSENTRY._serialized_options = b'8\001'
821
829
  _RANGEQUERYREQUEST.fields_by_name['include_only_volume']._options = None
822
830
  _RANGEQUERYREQUEST.fields_by_name['include_only_volume']._serialized_options = b'\202\262\031\002(\000'
823
- _CAMERADIRECTION._serialized_start=14246
824
- _CAMERADIRECTION._serialized_end=14376
825
- _CAMERAPROJECTION._serialized_start=14378
826
- _CAMERAPROJECTION._serialized_end=14431
827
- _REPRESENTATION._serialized_start=14433
828
- _REPRESENTATION._serialized_end=14513
829
- _STREAMLINESDIRECTION._serialized_start=14516
830
- _STREAMLINESDIRECTION._serialized_end=14680
831
- _GLYPHSAMPLINGMODE._serialized_start=14682
832
- _GLYPHSAMPLINGMODE._serialized_end=14773
833
- _COLORMAPNAME._serialized_start=14776
834
- _COLORMAPNAME._serialized_end=15010
835
- _EXTRACTSTATUS._serialized_start=15012
836
- _EXTRACTSTATUS._serialized_end=15079
837
- _RENDERDATAURLSSTATUS._serialized_start=15081
838
- _RENDERDATAURLSSTATUS._serialized_end=15185
839
- _FIELDASSOCIATION._serialized_start=15187
840
- _FIELDASSOCIATION._serialized_end=15299
831
+ _CAMERADIRECTION._serialized_start=14575
832
+ _CAMERADIRECTION._serialized_end=14705
833
+ _CAMERAPROJECTION._serialized_start=14707
834
+ _CAMERAPROJECTION._serialized_end=14760
835
+ _REPRESENTATION._serialized_start=14762
836
+ _REPRESENTATION._serialized_end=14842
837
+ _STREAMLINESDIRECTION._serialized_start=14845
838
+ _STREAMLINESDIRECTION._serialized_end=15009
839
+ _GLYPHSAMPLINGMODE._serialized_start=15011
840
+ _GLYPHSAMPLINGMODE._serialized_end=15102
841
+ _COLORMAPNAME._serialized_start=15105
842
+ _COLORMAPNAME._serialized_end=15339
843
+ _EXTRACTSTATUS._serialized_start=15341
844
+ _EXTRACTSTATUS._serialized_end=15408
845
+ _RENDERDATAURLSSTATUS._serialized_start=15410
846
+ _RENDERDATAURLSSTATUS._serialized_end=15514
847
+ _FIELDASSOCIATION._serialized_start=15516
848
+ _FIELDASSOCIATION._serialized_end=15628
841
849
  _PAN._serialized_start=248
842
850
  _PAN._serialized_end=309
843
851
  _CAMERALOOKAT._serialized_start=312
@@ -870,138 +878,140 @@ if _descriptor._USE_C_DESCRIPTORS == False:
870
878
  _AABB._serialized_end=2825
871
879
  _SLICE._serialized_start=2827
872
880
  _SLICE._serialized_end=2922
873
- _CONTOUR._serialized_start=2924
874
- _CONTOUR._serialized_end=3016
875
- _THRESHOLD._serialized_start=3019
876
- _THRESHOLD._serialized_end=3276
877
- _SEEDRAKECONFIG._serialized_start=3279
878
- _SEEDRAKECONFIG._serialized_end=3429
879
- _SEEDSURFACECONFIG._serialized_start=3432
880
- _SEEDSURFACECONFIG._serialized_end=3669
881
- _SEEDGRIDCONFIG._serialized_start=3672
882
- _SEEDGRIDCONFIG._serialized_end=4133
883
- _STREAMLINES._serialized_start=4136
884
- _STREAMLINES._serialized_end=4666
885
- _GLYPH._serialized_start=4669
886
- _GLYPH._serialized_end=4977
887
- _SURFACELICGEOMTERY._serialized_start=4979
888
- _SURFACELICGEOMTERY._serialized_end=5022
889
- _SURFACELICPLANE._serialized_start=5025
890
- _SURFACELICPLANE._serialized_end=5170
891
- _SURFACELIC._serialized_start=5173
892
- _SURFACELIC._serialized_end=5483
893
- _INTERSECTIONCURVE._serialized_start=5485
894
- _INTERSECTIONCURVE._serialized_end=5600
895
- _LINESAMPLEMESHRESOLUTION._serialized_start=5602
896
- _LINESAMPLEMESHRESOLUTION._serialized_end=5628
897
- _LINESAMPLE._serialized_start=5631
898
- _LINESAMPLE._serialized_end=5901
899
- _FILTER._serialized_start=5904
900
- _FILTER._serialized_end=6601
901
- _MESHENTITY._serialized_start=6603
902
- _MESHENTITY._serialized_end=6627
903
- _SIMULATIONENTITY._serialized_start=6629
904
- _SIMULATIONENTITY._serialized_end=6680
905
- _GEOMETRYENTITY._serialized_start=6682
906
- _GEOMETRYENTITY._serialized_end=6739
907
- _EXTRACTENTITY._serialized_start=6742
908
- _EXTRACTENTITY._serialized_end=6994
909
- _RANGE._serialized_start=6996
910
- _RANGE._serialized_end=7029
911
- _COLORMAP._serialized_start=7032
912
- _COLORMAP._serialized_end=8508
913
- _COLORMAP_ANCHORLOCATION._serialized_start=8013
914
- _COLORMAP_ANCHORLOCATION._serialized_end=8171
915
- _COLORMAP_AUTOMATIC._serialized_start=8173
916
- _COLORMAP_AUTOMATIC._serialized_end=8184
917
- _COLORMAP_MINMAXONLY._serialized_start=8186
918
- _COLORMAP_MINMAXONLY._serialized_end=8198
919
- _COLORMAP_AUTOMATICLOCATION._serialized_start=8201
920
- _COLORMAP_AUTOMATICLOCATION._serialized_end=8374
921
- _COLOR._serialized_start=8511
922
- _COLOR._serialized_end=8698
923
- _BACKGROUNDPROPERTIES._serialized_start=8700
924
- _BACKGROUNDPROPERTIES._serialized_end=8801
925
- _TRIADPROPERTIES._serialized_start=8803
926
- _TRIADPROPERTIES._serialized_end=8862
927
- _FILTERCONNECTIONS._serialized_start=8864
928
- _FILTERCONNECTIONS._serialized_end=8904
929
- _AXESGRIDPROPERTIES._serialized_start=8906
930
- _AXESGRIDPROPERTIES._serialized_end=8968
931
- _EXTRACTSPEC._serialized_start=8971
932
- _EXTRACTSPEC._serialized_end=10262
933
- _EXTRACTSPEC_FILTERCONNECTIONSENTRY._serialized_start=9964
934
- _EXTRACTSPEC_FILTERCONNECTIONSENTRY._serialized_end=10080
935
- _EXTRACTSPEC_DISPLAYATTRIBUTESENTRY._serialized_start=10082
936
- _EXTRACTSPEC_DISPLAYATTRIBUTESENTRY._serialized_end=10198
937
- _CREATEEXTRACTREQUEST._serialized_start=10264
938
- _CREATEEXTRACTREQUEST._serialized_end=10374
939
- _EXTRACT._serialized_start=10377
940
- _EXTRACT._serialized_end=10533
941
- _BOX._serialized_start=10536
942
- _BOX._serialized_end=10749
943
- _CLIP._serialized_start=10752
944
- _CLIP._serialized_end=10985
945
- _CREATEEXTRACTRESPONSE._serialized_start=10987
946
- _CREATEEXTRACTRESPONSE._serialized_end=11077
947
- _GETEXTRACTRESPONSE._serialized_start=11079
948
- _GETEXTRACTRESPONSE._serialized_end=11166
949
- _GETEXTRACTSPECRESPONSE._serialized_start=11168
950
- _GETEXTRACTSPECRESPONSE._serialized_end=11260
951
- _GETEXTRACTREQUEST._serialized_start=11262
952
- _GETEXTRACTREQUEST._serialized_end=11321
953
- _DOWNLOADEXTRACTREQUEST._serialized_start=11323
954
- _DOWNLOADEXTRACTREQUEST._serialized_end=11387
955
- _IMAGES._serialized_start=11389
956
- _IMAGES._serialized_end=11478
957
- _DOWNLOADEXTRACTRESPONSE._serialized_start=11481
958
- _DOWNLOADEXTRACTRESPONSE._serialized_end=11640
959
- _LISTEXTRACTSREQUEST._serialized_start=11643
960
- _LISTEXTRACTSREQUEST._serialized_end=11775
961
- _LISTEXTRACTSRESPONSE._serialized_start=11777
962
- _LISTEXTRACTSRESPONSE._serialized_end=11867
963
- _DELETEEXTRACTREQUEST._serialized_start=11869
964
- _DELETEEXTRACTREQUEST._serialized_end=11931
965
- _DELETEEXTRACTRESPONSE._serialized_start=11933
966
- _DELETEEXTRACTRESPONSE._serialized_end=11956
967
- _GETRENDERDATAURLSREQUEST._serialized_start=11959
968
- _GETRENDERDATAURLSREQUEST._serialized_end=12379
969
- _GETRENDERDATAURLSREQUEST_FILTERCONNECTIONSENTRY._serialized_start=9964
970
- _GETRENDERDATAURLSREQUEST_FILTERCONNECTIONSENTRY._serialized_end=10080
971
- _RENDERDATAURLS._serialized_start=12381
972
- _RENDERDATAURLS._serialized_end=12487
973
- _GETRENDERDATAURLSRESPONSE._serialized_start=12490
974
- _GETRENDERDATAURLSRESPONSE._serialized_end=12652
975
- _LISTSOLUTIONFIELDSREQUEST._serialized_start=12654
976
- _LISTSOLUTIONFIELDSREQUEST._serialized_end=12780
977
- _LISTSOLUTIONFIELDSREPLY._serialized_start=12782
978
- _LISTSOLUTIONFIELDSREPLY._serialized_end=12866
979
- _CAMERAENTRY._serialized_start=12868
980
- _CAMERAENTRY._serialized_end=12914
981
- _LISTCAMERASREQUEST._serialized_start=12916
982
- _LISTCAMERASREQUEST._serialized_end=12956
983
- _LISTCAMERASREPLY._serialized_start=12958
984
- _LISTCAMERASREPLY._serialized_end=13046
985
- _GETCAMERAREQUEST._serialized_start=13048
986
- _GETCAMERAREQUEST._serialized_end=13158
987
- _GETCAMERAREPLY._serialized_start=13160
988
- _GETCAMERAREPLY._serialized_end=13241
989
- _LINEDATAEXTRACT._serialized_start=13244
990
- _LINEDATAEXTRACT._serialized_end=13658
991
- _LINEDATAEXTRACT_TABLE._serialized_start=13433
992
- _LINEDATAEXTRACT_TABLE._serialized_end=13501
993
- _LINEDATAEXTRACT_LINESENTRY._serialized_start=13503
994
- _LINEDATAEXTRACT_LINESENTRY._serialized_end=13611
995
- _LINEDATAEXTRACT_LABELSENTRY._serialized_start=13613
996
- _LINEDATAEXTRACT_LABELSENTRY._serialized_end=13658
997
- _RANGEENTITY._serialized_start=13660
998
- _RANGEENTITY._serialized_end=13764
999
- _RANGEQUERYREQUEST._serialized_start=13767
1000
- _RANGEQUERYREQUEST._serialized_end=13999
1001
- _RANGERESULT._serialized_start=14002
1002
- _RANGERESULT._serialized_end=14155
1003
- _RANGEQUERYREPLY._serialized_start=14157
1004
- _RANGEQUERYREPLY._serialized_end=14243
1005
- _VISAPISERVICE._serialized_start=15302
1006
- _VISAPISERVICE._serialized_end=16915
881
+ _MULTISLICE._serialized_start=2925
882
+ _MULTISLICE._serialized_end=3175
883
+ _CONTOUR._serialized_start=3177
884
+ _CONTOUR._serialized_end=3269
885
+ _THRESHOLD._serialized_start=3272
886
+ _THRESHOLD._serialized_end=3529
887
+ _SEEDRAKECONFIG._serialized_start=3532
888
+ _SEEDRAKECONFIG._serialized_end=3682
889
+ _SEEDSURFACECONFIG._serialized_start=3685
890
+ _SEEDSURFACECONFIG._serialized_end=3922
891
+ _SEEDGRIDCONFIG._serialized_start=3925
892
+ _SEEDGRIDCONFIG._serialized_end=4386
893
+ _STREAMLINES._serialized_start=4389
894
+ _STREAMLINES._serialized_end=4919
895
+ _GLYPH._serialized_start=4922
896
+ _GLYPH._serialized_end=5230
897
+ _SURFACELICGEOMTERY._serialized_start=5232
898
+ _SURFACELICGEOMTERY._serialized_end=5275
899
+ _SURFACELICPLANE._serialized_start=5278
900
+ _SURFACELICPLANE._serialized_end=5423
901
+ _SURFACELIC._serialized_start=5426
902
+ _SURFACELIC._serialized_end=5736
903
+ _INTERSECTIONCURVE._serialized_start=5738
904
+ _INTERSECTIONCURVE._serialized_end=5853
905
+ _LINESAMPLEMESHRESOLUTION._serialized_start=5855
906
+ _LINESAMPLEMESHRESOLUTION._serialized_end=5881
907
+ _LINESAMPLE._serialized_start=5884
908
+ _LINESAMPLE._serialized_end=6154
909
+ _FILTER._serialized_start=6157
910
+ _FILTER._serialized_end=6930
911
+ _MESHENTITY._serialized_start=6932
912
+ _MESHENTITY._serialized_end=6956
913
+ _SIMULATIONENTITY._serialized_start=6958
914
+ _SIMULATIONENTITY._serialized_end=7009
915
+ _GEOMETRYENTITY._serialized_start=7011
916
+ _GEOMETRYENTITY._serialized_end=7068
917
+ _EXTRACTENTITY._serialized_start=7071
918
+ _EXTRACTENTITY._serialized_end=7323
919
+ _RANGE._serialized_start=7325
920
+ _RANGE._serialized_end=7358
921
+ _COLORMAP._serialized_start=7361
922
+ _COLORMAP._serialized_end=8837
923
+ _COLORMAP_ANCHORLOCATION._serialized_start=8342
924
+ _COLORMAP_ANCHORLOCATION._serialized_end=8500
925
+ _COLORMAP_AUTOMATIC._serialized_start=8502
926
+ _COLORMAP_AUTOMATIC._serialized_end=8513
927
+ _COLORMAP_MINMAXONLY._serialized_start=8515
928
+ _COLORMAP_MINMAXONLY._serialized_end=8527
929
+ _COLORMAP_AUTOMATICLOCATION._serialized_start=8530
930
+ _COLORMAP_AUTOMATICLOCATION._serialized_end=8703
931
+ _COLOR._serialized_start=8840
932
+ _COLOR._serialized_end=9027
933
+ _BACKGROUNDPROPERTIES._serialized_start=9029
934
+ _BACKGROUNDPROPERTIES._serialized_end=9130
935
+ _TRIADPROPERTIES._serialized_start=9132
936
+ _TRIADPROPERTIES._serialized_end=9191
937
+ _FILTERCONNECTIONS._serialized_start=9193
938
+ _FILTERCONNECTIONS._serialized_end=9233
939
+ _AXESGRIDPROPERTIES._serialized_start=9235
940
+ _AXESGRIDPROPERTIES._serialized_end=9297
941
+ _EXTRACTSPEC._serialized_start=9300
942
+ _EXTRACTSPEC._serialized_end=10591
943
+ _EXTRACTSPEC_FILTERCONNECTIONSENTRY._serialized_start=10293
944
+ _EXTRACTSPEC_FILTERCONNECTIONSENTRY._serialized_end=10409
945
+ _EXTRACTSPEC_DISPLAYATTRIBUTESENTRY._serialized_start=10411
946
+ _EXTRACTSPEC_DISPLAYATTRIBUTESENTRY._serialized_end=10527
947
+ _CREATEEXTRACTREQUEST._serialized_start=10593
948
+ _CREATEEXTRACTREQUEST._serialized_end=10703
949
+ _EXTRACT._serialized_start=10706
950
+ _EXTRACT._serialized_end=10862
951
+ _BOX._serialized_start=10865
952
+ _BOX._serialized_end=11078
953
+ _CLIP._serialized_start=11081
954
+ _CLIP._serialized_end=11314
955
+ _CREATEEXTRACTRESPONSE._serialized_start=11316
956
+ _CREATEEXTRACTRESPONSE._serialized_end=11406
957
+ _GETEXTRACTRESPONSE._serialized_start=11408
958
+ _GETEXTRACTRESPONSE._serialized_end=11495
959
+ _GETEXTRACTSPECRESPONSE._serialized_start=11497
960
+ _GETEXTRACTSPECRESPONSE._serialized_end=11589
961
+ _GETEXTRACTREQUEST._serialized_start=11591
962
+ _GETEXTRACTREQUEST._serialized_end=11650
963
+ _DOWNLOADEXTRACTREQUEST._serialized_start=11652
964
+ _DOWNLOADEXTRACTREQUEST._serialized_end=11716
965
+ _IMAGES._serialized_start=11718
966
+ _IMAGES._serialized_end=11807
967
+ _DOWNLOADEXTRACTRESPONSE._serialized_start=11810
968
+ _DOWNLOADEXTRACTRESPONSE._serialized_end=11969
969
+ _LISTEXTRACTSREQUEST._serialized_start=11972
970
+ _LISTEXTRACTSREQUEST._serialized_end=12104
971
+ _LISTEXTRACTSRESPONSE._serialized_start=12106
972
+ _LISTEXTRACTSRESPONSE._serialized_end=12196
973
+ _DELETEEXTRACTREQUEST._serialized_start=12198
974
+ _DELETEEXTRACTREQUEST._serialized_end=12260
975
+ _DELETEEXTRACTRESPONSE._serialized_start=12262
976
+ _DELETEEXTRACTRESPONSE._serialized_end=12285
977
+ _GETRENDERDATAURLSREQUEST._serialized_start=12288
978
+ _GETRENDERDATAURLSREQUEST._serialized_end=12708
979
+ _GETRENDERDATAURLSREQUEST_FILTERCONNECTIONSENTRY._serialized_start=10293
980
+ _GETRENDERDATAURLSREQUEST_FILTERCONNECTIONSENTRY._serialized_end=10409
981
+ _RENDERDATAURLS._serialized_start=12710
982
+ _RENDERDATAURLS._serialized_end=12816
983
+ _GETRENDERDATAURLSRESPONSE._serialized_start=12819
984
+ _GETRENDERDATAURLSRESPONSE._serialized_end=12981
985
+ _LISTSOLUTIONFIELDSREQUEST._serialized_start=12983
986
+ _LISTSOLUTIONFIELDSREQUEST._serialized_end=13109
987
+ _LISTSOLUTIONFIELDSREPLY._serialized_start=13111
988
+ _LISTSOLUTIONFIELDSREPLY._serialized_end=13195
989
+ _CAMERAENTRY._serialized_start=13197
990
+ _CAMERAENTRY._serialized_end=13243
991
+ _LISTCAMERASREQUEST._serialized_start=13245
992
+ _LISTCAMERASREQUEST._serialized_end=13285
993
+ _LISTCAMERASREPLY._serialized_start=13287
994
+ _LISTCAMERASREPLY._serialized_end=13375
995
+ _GETCAMERAREQUEST._serialized_start=13377
996
+ _GETCAMERAREQUEST._serialized_end=13487
997
+ _GETCAMERAREPLY._serialized_start=13489
998
+ _GETCAMERAREPLY._serialized_end=13570
999
+ _LINEDATAEXTRACT._serialized_start=13573
1000
+ _LINEDATAEXTRACT._serialized_end=13987
1001
+ _LINEDATAEXTRACT_TABLE._serialized_start=13762
1002
+ _LINEDATAEXTRACT_TABLE._serialized_end=13830
1003
+ _LINEDATAEXTRACT_LINESENTRY._serialized_start=13832
1004
+ _LINEDATAEXTRACT_LINESENTRY._serialized_end=13940
1005
+ _LINEDATAEXTRACT_LABELSENTRY._serialized_start=13942
1006
+ _LINEDATAEXTRACT_LABELSENTRY._serialized_end=13987
1007
+ _RANGEENTITY._serialized_start=13989
1008
+ _RANGEENTITY._serialized_end=14093
1009
+ _RANGEQUERYREQUEST._serialized_start=14096
1010
+ _RANGEQUERYREQUEST._serialized_end=14328
1011
+ _RANGERESULT._serialized_start=14331
1012
+ _RANGERESULT._serialized_end=14484
1013
+ _RANGEQUERYREPLY._serialized_start=14486
1014
+ _RANGEQUERYREPLY._serialized_end=14572
1015
+ _VISAPISERVICE._serialized_start=15631
1016
+ _VISAPISERVICE._serialized_end=17244
1007
1017
  # @@protoc_insertion_point(module_scope)
@@ -577,6 +577,36 @@ class Slice(google.protobuf.message.Message):
577
577
 
578
578
  global___Slice = Slice
579
579
 
580
+ class MultiSlice(google.protobuf.message.Message):
581
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
582
+
583
+ START_POSITION_FIELD_NUMBER: builtins.int
584
+ END_POSITION_FIELD_NUMBER: builtins.int
585
+ N_SLICES_FIELD_NUMBER: builtins.int
586
+ PROJECT_VECTORS_FIELD_NUMBER: builtins.int
587
+ @property
588
+ def start_position(self) -> luminarycloud._proto.api.v0.luminarycloud.common.common_pb2.Vector3: ...
589
+ @property
590
+ def end_position(self) -> luminarycloud._proto.api.v0.luminarycloud.common.common_pb2.Vector3: ...
591
+ n_slices: builtins.int
592
+ project_vectors: builtins.bool
593
+ def __init__(
594
+ self,
595
+ *,
596
+ start_position: luminarycloud._proto.api.v0.luminarycloud.common.common_pb2.Vector3 | None = ...,
597
+ end_position: luminarycloud._proto.api.v0.luminarycloud.common.common_pb2.Vector3 | None = ...,
598
+ n_slices: builtins.int | None = ...,
599
+ project_vectors: builtins.bool | None = ...,
600
+ ) -> None: ...
601
+ def HasField(self, field_name: typing_extensions.Literal["_n_slices", b"_n_slices", "_project_vectors", b"_project_vectors", "end_position", b"end_position", "n_slices", b"n_slices", "project_vectors", b"project_vectors", "start_position", b"start_position"]) -> builtins.bool: ...
602
+ def ClearField(self, field_name: typing_extensions.Literal["_n_slices", b"_n_slices", "_project_vectors", b"_project_vectors", "end_position", b"end_position", "n_slices", b"n_slices", "project_vectors", b"project_vectors", "start_position", b"start_position"]) -> None: ...
603
+ @typing.overload
604
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_n_slices", b"_n_slices"]) -> typing_extensions.Literal["n_slices"] | None: ...
605
+ @typing.overload
606
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_project_vectors", b"_project_vectors"]) -> typing_extensions.Literal["project_vectors"] | None: ...
607
+
608
+ global___MultiSlice = MultiSlice
609
+
580
610
  class Contour(google.protobuf.message.Message):
581
611
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
582
612
 
@@ -952,6 +982,7 @@ class Filter(google.protobuf.message.Message):
952
982
  SURFACE_LIC_FIELD_NUMBER: builtins.int
953
983
  INTERSECTION_CURVE_FIELD_NUMBER: builtins.int
954
984
  LINE_SAMPLE_FIELD_NUMBER: builtins.int
985
+ MULTI_SLICE_FIELD_NUMBER: builtins.int
955
986
  id: builtins.str
956
987
  """A unique identifier for this filter."""
957
988
  name: builtins.str
@@ -974,6 +1005,8 @@ class Filter(google.protobuf.message.Message):
974
1005
  def intersection_curve(self) -> global___IntersectionCurve: ...
975
1006
  @property
976
1007
  def line_sample(self) -> global___LineSample: ...
1008
+ @property
1009
+ def multi_slice(self) -> global___MultiSlice: ...
977
1010
  def __init__(
978
1011
  self,
979
1012
  *,
@@ -988,10 +1021,11 @@ class Filter(google.protobuf.message.Message):
988
1021
  surface_lic: global___SurfaceLIC | None = ...,
989
1022
  intersection_curve: global___IntersectionCurve | None = ...,
990
1023
  line_sample: global___LineSample | None = ...,
1024
+ multi_slice: global___MultiSlice | None = ...,
991
1025
  ) -> None: ...
992
- def HasField(self, field_name: typing_extensions.Literal["clip", b"clip", "contour", b"contour", "glyph", b"glyph", "intersection_curve", b"intersection_curve", "line_sample", b"line_sample", "slice", b"slice", "streamlines", b"streamlines", "surface_lic", b"surface_lic", "threshold", b"threshold", "value", b"value"]) -> builtins.bool: ...
993
- def ClearField(self, field_name: typing_extensions.Literal["clip", b"clip", "contour", b"contour", "glyph", b"glyph", "id", b"id", "intersection_curve", b"intersection_curve", "line_sample", b"line_sample", "name", b"name", "slice", b"slice", "streamlines", b"streamlines", "surface_lic", b"surface_lic", "threshold", b"threshold", "value", b"value"]) -> None: ...
994
- def WhichOneof(self, oneof_group: typing_extensions.Literal["value", b"value"]) -> typing_extensions.Literal["slice", "clip", "contour", "threshold", "streamlines", "glyph", "surface_lic", "intersection_curve", "line_sample"] | None: ...
1026
+ def HasField(self, field_name: typing_extensions.Literal["clip", b"clip", "contour", b"contour", "glyph", b"glyph", "intersection_curve", b"intersection_curve", "line_sample", b"line_sample", "multi_slice", b"multi_slice", "slice", b"slice", "streamlines", b"streamlines", "surface_lic", b"surface_lic", "threshold", b"threshold", "value", b"value"]) -> builtins.bool: ...
1027
+ def ClearField(self, field_name: typing_extensions.Literal["clip", b"clip", "contour", b"contour", "glyph", b"glyph", "id", b"id", "intersection_curve", b"intersection_curve", "line_sample", b"line_sample", "multi_slice", b"multi_slice", "name", b"name", "slice", b"slice", "streamlines", b"streamlines", "surface_lic", b"surface_lic", "threshold", b"threshold", "value", b"value"]) -> None: ...
1028
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["value", b"value"]) -> typing_extensions.Literal["slice", "clip", "contour", "threshold", "streamlines", "glyph", "surface_lic", "intersection_curve", "line_sample", "multi_slice"] | None: ...
995
1029
 
996
1030
  global___Filter = Filter
997
1031
 
@@ -19,7 +19,7 @@ from luminarycloud._proto.quantity import quantity_pb2 as proto_dot_quantity_dot
19
19
  from luminarycloud._proto.lcstatus import lcstatus_pb2 as proto_dot_lcstatus_dot_lcstatus__pb2
20
20
 
21
21
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15proto/base/base.proto\x12\x13luminary.proto.base\x1a google/protobuf/descriptor.proto\x1a\x19google/protobuf/any.proto\x1a\x1dproto/quantity/quantity.proto\x1a\x1dproto/lcstatus/lcstatus.proto\"/\n\x08\x43hecksum\x12\x10\n\x06sha256\x18\x01 \x01(\x0cH\x00\x42\x0b\n\talgorithmJ\x04\x08\x02\x10\x03\"N\n\x06Status\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\x12%\n\x07\x64\x65tails\x18\x03 \x03(\x0b\x32\x14.google.protobuf.Any\"x\n\rStatusPayload\x12-\n\x07subcode\x18\x01 \x01(\x0e\x32\x1c.luminary.proto.base.Subcode\x12\x38\n\x06\x64\x65tail\x18\x03 \x03(\x0b\x32(.luminary.proto.base.StatusPayloadDetail\"5\n\x13StatusPayloadDetail\x12\x0f\n\x07message\x18\x10 \x01(\t\x12\r\n\x05where\x18\x11 \x01(\t\"\xb3\x01\n\tJobStatus\x12/\n\x03typ\x18\x01 \x01(\x0e\x32\".luminary.proto.base.JobStatusType\x12-\n\x06status\x18\x02 \x01(\x0b\x32\x1b.luminary.proto.base.StatusH\x00\x12\x35\n\x08lcstatus\x18\x03 \x01(\x0b\x32!.luminary.proto.lcstatus.LCStatusH\x00\x42\x0f\n\rfailed_reason\"\x92\x01\n\tAdVector3\x12+\n\x01x\x18\x01 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01y\x18\x02 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01z\x18\x03 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\"*\n\x07Vector3\x12\t\n\x01x\x18\x01 \x01(\x01\x12\t\n\x01y\x18\x02 \x01(\x01\x12\t\n\x01z\x18\x03 \x01(\x01\"-\n\nIntVector3\x12\t\n\x01x\x18\x01 \x01(\x03\x12\t\n\x01y\x18\x02 \x01(\x03\x12\t\n\x01z\x18\x03 \x01(\x03\"\x84\x01\n\x07Matrix3\x12\'\n\x01\x61\x18\x01 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x62\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x63\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\"C\n\x10\x46irstOrderAdType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x0f\n\x07tangent\x18\x02 \x03(\x01\x12\x0f\n\x07\x61\x64joint\x18\x03 \x03(\x01\"\xb9\x01\n\x11SecondOrderAdType\x12\x34\n\x05value\x18\x01 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07tangent\x18\x02 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07\x61\x64joint\x18\x03 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\"3\n\x0e\x45xpressionType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x12\n\nexpression\x18\x02 \x01(\t\"\xad\x02\n\x0b\x41\x64\x46loatType\x12\x0f\n\x05value\x18\x01 \x01(\x01H\x00\x12<\n\x0b\x66irst_order\x18\x02 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdTypeH\x00\x12>\n\x0csecond_order\x18\x03 \x01(\x0b\x32&.luminary.proto.base.SecondOrderAdTypeH\x00\x12\x37\n\x08variable\x18\x05 \x01(\x0b\x32#.luminary.proto.base.ExpressionTypeH\x00\x12>\n\rquantity_type\x18\x04 \x01(\x0e\x32%.luminary.proto.quantity.QuantityTypeH\x01\x42\n\n\x08\x61\x64_typesB\n\n\x08quantity\"\x14\n\x03Int\x12\r\n\x05value\x18\x01 \x01(\x03\"\x16\n\x05\x46loat\x12\r\n\x05value\x18\x01 \x01(\x01\"\x15\n\x04\x42ool\x12\r\n\x05value\x18\x01 \x01(\x08\":\n\x05\x41\x64Row\x12\x31\n\x07\x65lement\x18\x01 \x03(\x0b\x32 .luminary.proto.base.AdFloatType\"3\n\x08\x41\x64Matrix\x12\'\n\x03row\x18\x01 \x03(\x0b\x32\x1a.luminary.proto.base.AdRow\"\x8c\x01\n\tAdMatrix3\x12)\n\x01\x61\x18\x01 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12)\n\x01\x62\x18\x02 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12)\n\x01\x63\x18\x03 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3*\xcd\x03\n\x07Subcode\x12\x17\n\x13SUBCODE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SUBCODE_USER_NOT_FOUND\x10\x01\x12 \n\x1cSUBCODE_JOB_CANCELED_BY_USER\x10\x02\x12#\n\x1fSUBCODE_JOB_CANCELED_DIVERGENCE\x10\x03\x12$\n SUBCODE_JOB_CANCELED_SETUP_ERROR\x10\x04\x12\x1f\n\x1bSUBCODE_INCOMPATIBLE_CLIENT\x10\x05\x12\x1e\n\x1aSUBCODE_INSUFFICIENT_QUOTA\x10\x06\x12/\n+SUBCODE_EMAIL_DOMAIN_NOT_IN_ALLOWED_DOMAINS\x10\x07\x12&\n\"SUBCODE_TRIAL_ACCOUNT_USER_BLOCKED\x10\x08\x12(\n$SUBCODE_UNLIMITED_PLAN_EXCEEDS_QUOTA\x10\t\x12 \n\x1cSUBCODE_DATE_RANGE_TOO_LARGE\x10\n\x12\x1d\n\x19SUBCODE_GEO_ERROR_TO_USER\x10\x0b\x12\x1b\n\x17SUBCODE_GEO_UNSUPPORTED\x10\x0c*t\n\rJobStatusType\x12\x0b\n\x07Invalid\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\r\n\tCompleted\x10\x02\x12\n\n\x06\x46\x61iled\x10\x03\x12\r\n\tSuspended\x10\x04\x12\x10\n\x0cPendingRetry\x10\x05\x12\x0e\n\nSuspending\x10\x06*\x80\x01\n\x10Vector3Component\x12\x1e\n\x1aVECTOR_3_COMPONENT_INVALID\x10\x00\x12\x18\n\x14VECTOR_3_COMPONENT_X\x10\x01\x12\x18\n\x14VECTOR_3_COMPONENT_Y\x10\x02\x12\x18\n\x14VECTOR_3_COMPONENT_Z\x10\x03\x42#Z!luminarycloud.com/core/proto/baseb\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15proto/base/base.proto\x12\x13luminary.proto.base\x1a google/protobuf/descriptor.proto\x1a\x19google/protobuf/any.proto\x1a\x1dproto/quantity/quantity.proto\x1a\x1dproto/lcstatus/lcstatus.proto\"/\n\x08\x43hecksum\x12\x10\n\x06sha256\x18\x01 \x01(\x0cH\x00\x42\x0b\n\talgorithmJ\x04\x08\x02\x10\x03\"N\n\x06Status\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\x12%\n\x07\x64\x65tails\x18\x03 \x03(\x0b\x32\x14.google.protobuf.Any\"x\n\rStatusPayload\x12-\n\x07subcode\x18\x01 \x01(\x0e\x32\x1c.luminary.proto.base.Subcode\x12\x38\n\x06\x64\x65tail\x18\x03 \x03(\x0b\x32(.luminary.proto.base.StatusPayloadDetail\"5\n\x13StatusPayloadDetail\x12\x0f\n\x07message\x18\x10 \x01(\t\x12\r\n\x05where\x18\x11 \x01(\t\"\xb3\x01\n\tJobStatus\x12/\n\x03typ\x18\x01 \x01(\x0e\x32\".luminary.proto.base.JobStatusType\x12-\n\x06status\x18\x02 \x01(\x0b\x32\x1b.luminary.proto.base.StatusH\x00\x12\x35\n\x08lcstatus\x18\x03 \x01(\x0b\x32!.luminary.proto.lcstatus.LCStatusH\x00\x42\x0f\n\rfailed_reason\"\x92\x01\n\tAdVector3\x12+\n\x01x\x18\x01 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01y\x18\x02 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01z\x18\x03 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\"*\n\x07Vector3\x12\t\n\x01x\x18\x01 \x01(\x01\x12\t\n\x01y\x18\x02 \x01(\x01\x12\t\n\x01z\x18\x03 \x01(\x01\"-\n\nIntVector3\x12\t\n\x01x\x18\x01 \x01(\x03\x12\t\n\x01y\x18\x02 \x01(\x03\x12\t\n\x01z\x18\x03 \x01(\x03\"\x84\x01\n\x07Matrix3\x12\'\n\x01\x61\x18\x01 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x62\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x63\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\"C\n\x10\x46irstOrderAdType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x0f\n\x07tangent\x18\x02 \x03(\x01\x12\x0f\n\x07\x61\x64joint\x18\x03 \x03(\x01\"\xb9\x01\n\x11SecondOrderAdType\x12\x34\n\x05value\x18\x01 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07tangent\x18\x02 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07\x61\x64joint\x18\x03 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\"3\n\x0e\x45xpressionType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x12\n\nexpression\x18\x02 \x01(\t\"\xad\x02\n\x0b\x41\x64\x46loatType\x12\x0f\n\x05value\x18\x01 \x01(\x01H\x00\x12<\n\x0b\x66irst_order\x18\x02 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdTypeH\x00\x12>\n\x0csecond_order\x18\x03 \x01(\x0b\x32&.luminary.proto.base.SecondOrderAdTypeH\x00\x12\x37\n\x08variable\x18\x05 \x01(\x0b\x32#.luminary.proto.base.ExpressionTypeH\x00\x12>\n\rquantity_type\x18\x04 \x01(\x0e\x32%.luminary.proto.quantity.QuantityTypeH\x01\x42\n\n\x08\x61\x64_typesB\n\n\x08quantity\"\x14\n\x03Int\x12\r\n\x05value\x18\x01 \x01(\x03\"\x16\n\x05\x46loat\x12\r\n\x05value\x18\x01 \x01(\x01\"\x15\n\x04\x42ool\x12\r\n\x05value\x18\x01 \x01(\x08\":\n\x05\x41\x64Row\x12\x31\n\x07\x65lement\x18\x01 \x03(\x0b\x32 .luminary.proto.base.AdFloatType\"3\n\x08\x41\x64Matrix\x12\'\n\x03row\x18\x01 \x03(\x0b\x32\x1a.luminary.proto.base.AdRow\"\x8c\x01\n\tAdMatrix3\x12)\n\x01\x61\x18\x01 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12)\n\x01\x62\x18\x02 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12)\n\x01\x63\x18\x03 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3*\xe7\x03\n\x07Subcode\x12\x17\n\x13SUBCODE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SUBCODE_USER_NOT_FOUND\x10\x01\x12 \n\x1cSUBCODE_JOB_CANCELED_BY_USER\x10\x02\x12#\n\x1fSUBCODE_JOB_CANCELED_DIVERGENCE\x10\x03\x12$\n SUBCODE_JOB_CANCELED_SETUP_ERROR\x10\x04\x12\x1f\n\x1bSUBCODE_INCOMPATIBLE_CLIENT\x10\x05\x12\x1e\n\x1aSUBCODE_INSUFFICIENT_QUOTA\x10\x06\x12/\n+SUBCODE_EMAIL_DOMAIN_NOT_IN_ALLOWED_DOMAINS\x10\x07\x12&\n\"SUBCODE_TRIAL_ACCOUNT_USER_BLOCKED\x10\x08\x12(\n$SUBCODE_UNLIMITED_PLAN_EXCEEDS_QUOTA\x10\t\x12 \n\x1cSUBCODE_DATE_RANGE_TOO_LARGE\x10\n\x12\x1d\n\x19SUBCODE_GEO_ERROR_TO_USER\x10\x0b\x12\x1b\n\x17SUBCODE_GEO_UNSUPPORTED\x10\x0c\x12\x18\n\x14SUBCODE_RATE_LIMITED\x10\r*t\n\rJobStatusType\x12\x0b\n\x07Invalid\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\r\n\tCompleted\x10\x02\x12\n\n\x06\x46\x61iled\x10\x03\x12\r\n\tSuspended\x10\x04\x12\x10\n\x0cPendingRetry\x10\x05\x12\x0e\n\nSuspending\x10\x06*\x80\x01\n\x10Vector3Component\x12\x1e\n\x1aVECTOR_3_COMPONENT_INVALID\x10\x00\x12\x18\n\x14VECTOR_3_COMPONENT_X\x10\x01\x12\x18\n\x14VECTOR_3_COMPONENT_Y\x10\x02\x12\x18\n\x14VECTOR_3_COMPONENT_Z\x10\x03\x42#Z!luminarycloud.com/core/proto/baseb\x06proto3')
23
23
 
24
24
  _SUBCODE = DESCRIPTOR.enum_types_by_name['Subcode']
25
25
  Subcode = enum_type_wrapper.EnumTypeWrapper(_SUBCODE)
@@ -40,6 +40,7 @@ SUBCODE_UNLIMITED_PLAN_EXCEEDS_QUOTA = 9
40
40
  SUBCODE_DATE_RANGE_TOO_LARGE = 10
41
41
  SUBCODE_GEO_ERROR_TO_USER = 11
42
42
  SUBCODE_GEO_UNSUPPORTED = 12
43
+ SUBCODE_RATE_LIMITED = 13
43
44
  Invalid = 0
44
45
  Active = 1
45
46
  Completed = 2
@@ -210,11 +211,11 @@ if _descriptor._USE_C_DESCRIPTORS == False:
210
211
  DESCRIPTOR._options = None
211
212
  DESCRIPTOR._serialized_options = b'Z!luminarycloud.com/core/proto/base'
212
213
  _SUBCODE._serialized_start=1972
213
- _SUBCODE._serialized_end=2433
214
- _JOBSTATUSTYPE._serialized_start=2435
215
- _JOBSTATUSTYPE._serialized_end=2551
216
- _VECTOR3COMPONENT._serialized_start=2554
217
- _VECTOR3COMPONENT._serialized_end=2682
214
+ _SUBCODE._serialized_end=2459
215
+ _JOBSTATUSTYPE._serialized_start=2461
216
+ _JOBSTATUSTYPE._serialized_end=2577
217
+ _VECTOR3COMPONENT._serialized_start=2580
218
+ _VECTOR3COMPONENT._serialized_end=2708
218
219
  _CHECKSUM._serialized_start=169
219
220
  _CHECKSUM._serialized_end=216
220
221
  _STATUS._serialized_start=218
@@ -56,6 +56,8 @@ class _SubcodeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTy
56
56
  """Set if the geometry error should be surfaced to the user."""
57
57
  SUBCODE_GEO_UNSUPPORTED: _Subcode.ValueType # 12
58
58
  """Set if the provided CAD is not supported. Should be shown to the user."""
59
+ SUBCODE_RATE_LIMITED: _Subcode.ValueType # 13
60
+ """Set if the request is rate limited."""
59
61
 
60
62
  class Subcode(_Subcode, metaclass=_SubcodeEnumTypeWrapper):
61
63
  """Subcode is stored in StatusPayload.subcode. It classifies the error type in
@@ -91,6 +93,8 @@ SUBCODE_GEO_ERROR_TO_USER: Subcode.ValueType # 11
91
93
  """Set if the geometry error should be surfaced to the user."""
92
94
  SUBCODE_GEO_UNSUPPORTED: Subcode.ValueType # 12
93
95
  """Set if the provided CAD is not supported. Should be shown to the user."""
96
+ SUBCODE_RATE_LIMITED: Subcode.ValueType # 13
97
+ """Set if the request is rate limited."""
94
98
  global___Subcode = Subcode
95
99
 
96
100
  class _JobStatusType: