cubevis 0.5.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 (132) hide show
  1. cubevis/LICENSE.rst +500 -0
  2. cubevis/__icons__/20px/fast-backward.svg +13 -0
  3. cubevis/__icons__/20px/fast-forward.svg +13 -0
  4. cubevis/__icons__/20px/step-backward.svg +12 -0
  5. cubevis/__icons__/20px/step-forward.svg +12 -0
  6. cubevis/__icons__/add-chan.png +0 -0
  7. cubevis/__icons__/add-chan.svg +84 -0
  8. cubevis/__icons__/add-cube.png +0 -0
  9. cubevis/__icons__/add-cube.svg +186 -0
  10. cubevis/__icons__/drag.png +0 -0
  11. cubevis/__icons__/drag.svg +109 -0
  12. cubevis/__icons__/mask-selected.png +0 -0
  13. cubevis/__icons__/mask.png +0 -0
  14. cubevis/__icons__/mask.svg +1 -0
  15. cubevis/__icons__/new-layer-sm-selected.png +0 -0
  16. cubevis/__icons__/new-layer-sm-selected.svg +88 -0
  17. cubevis/__icons__/new-layer-sm.png +0 -0
  18. cubevis/__icons__/new-layer-sm.svg +15 -0
  19. cubevis/__icons__/reset.png +0 -0
  20. cubevis/__icons__/reset.svg +11 -0
  21. cubevis/__icons__/sub-chan.png +0 -0
  22. cubevis/__icons__/sub-chan.svg +71 -0
  23. cubevis/__icons__/sub-cube.png +0 -0
  24. cubevis/__icons__/sub-cube.svg +95 -0
  25. cubevis/__icons__/zoom-to-fit.png +0 -0
  26. cubevis/__icons__/zoom-to-fit.svg +21 -0
  27. cubevis/__init__.py +58 -0
  28. cubevis/__js__/bokeh-3.6.1.min.js +728 -0
  29. cubevis/__js__/bokeh-tables-3.6.1.min.js +119 -0
  30. cubevis/__js__/bokeh-widgets-3.6.1.min.js +141 -0
  31. cubevis/__js__/casalib.min.js +1 -0
  32. cubevis/__js__/cubevisjs.min.js +62 -0
  33. cubevis/__version__.py +1 -0
  34. cubevis/apps/__init__.py +44 -0
  35. cubevis/apps/_createmask.py +461 -0
  36. cubevis/apps/_createregion.py +513 -0
  37. cubevis/apps/_interactiveclean.py +3260 -0
  38. cubevis/apps/_interactiveclean_wrappers.py +130 -0
  39. cubevis/apps/_ms_raster.py +815 -0
  40. cubevis/apps/_plotants.py +286 -0
  41. cubevis/apps/_plotbandpass.py +7 -0
  42. cubevis/bokeh/__init__.py +29 -0
  43. cubevis/bokeh/annotations/__init__.py +1 -0
  44. cubevis/bokeh/annotations/_ev_poly_annotation.py +6 -0
  45. cubevis/bokeh/components/__init__.py +28 -0
  46. cubevis/bokeh/format/__init__.py +31 -0
  47. cubevis/bokeh/format/_time_ticks.py +44 -0
  48. cubevis/bokeh/format/_wcs_ticks.py +45 -0
  49. cubevis/bokeh/models/__init__.py +4 -0
  50. cubevis/bokeh/models/_edit_span.py +7 -0
  51. cubevis/bokeh/models/_ev_text_input.py +6 -0
  52. cubevis/bokeh/models/_tip.py +37 -0
  53. cubevis/bokeh/models/_tip_button.py +50 -0
  54. cubevis/bokeh/sources/__init__.py +35 -0
  55. cubevis/bokeh/sources/_data_pipe.py +258 -0
  56. cubevis/bokeh/sources/_image_data_source.py +83 -0
  57. cubevis/bokeh/sources/_image_pipe.py +581 -0
  58. cubevis/bokeh/sources/_spectra_data_source.py +55 -0
  59. cubevis/bokeh/sources/_updatable_data_source.py +189 -0
  60. cubevis/bokeh/state/__init__.py +34 -0
  61. cubevis/bokeh/state/_initialize.py +164 -0
  62. cubevis/bokeh/state/_javascript.py +53 -0
  63. cubevis/bokeh/state/_palette.py +58 -0
  64. cubevis/bokeh/state/_session.py +44 -0
  65. cubevis/bokeh/state/js/bokeh-2.4.1.min.js +596 -0
  66. cubevis/bokeh/state/js/bokeh-gl-2.4.1.min.js +74 -0
  67. cubevis/bokeh/state/js/bokeh-tables-2.4.1.min.js +132 -0
  68. cubevis/bokeh/state/js/bokeh-widgets-2.4.1.min.js +118 -0
  69. cubevis/bokeh/state/js/casaguijs-v0.0.4.0-b2.4.min.js +49 -0
  70. cubevis/bokeh/state/js/casaguijs-v0.0.5.0-b2.4.min.js +49 -0
  71. cubevis/bokeh/state/js/casaguijs-v0.0.6.0-b2.4.min.js +49 -0
  72. cubevis/bokeh/state/js/casalib-v0.0.1.min.js +1 -0
  73. cubevis/bokeh/tools/__init__.py +31 -0
  74. cubevis/bokeh/tools/_cbreset_tool.py +52 -0
  75. cubevis/bokeh/tools/_drag_tool.py +61 -0
  76. cubevis/bokeh/utils/__init__.py +35 -0
  77. cubevis/bokeh/utils/_axes_labels.py +94 -0
  78. cubevis/bokeh/utils/_svg_icon.py +136 -0
  79. cubevis/data/__init__.py +1 -0
  80. cubevis/data/casaimage/__init__.py +114 -0
  81. cubevis/data/measurement_set/__init__.py +7 -0
  82. cubevis/data/measurement_set/_ms_data.py +178 -0
  83. cubevis/data/measurement_set/processing_set/__init__.py +30 -0
  84. cubevis/data/measurement_set/processing_set/_ps_concat.py +98 -0
  85. cubevis/data/measurement_set/processing_set/_ps_coords.py +78 -0
  86. cubevis/data/measurement_set/processing_set/_ps_data.py +213 -0
  87. cubevis/data/measurement_set/processing_set/_ps_io.py +55 -0
  88. cubevis/data/measurement_set/processing_set/_ps_raster_data.py +154 -0
  89. cubevis/data/measurement_set/processing_set/_ps_select.py +91 -0
  90. cubevis/data/measurement_set/processing_set/_ps_stats.py +218 -0
  91. cubevis/data/measurement_set/processing_set/_xds_data.py +149 -0
  92. cubevis/plot/__init__.py +1 -0
  93. cubevis/plot/ms_plot/__init__.py +29 -0
  94. cubevis/plot/ms_plot/_ms_plot.py +242 -0
  95. cubevis/plot/ms_plot/_ms_plot_constants.py +22 -0
  96. cubevis/plot/ms_plot/_ms_plot_selectors.py +348 -0
  97. cubevis/plot/ms_plot/_raster_plot.py +292 -0
  98. cubevis/plot/ms_plot/_raster_plot_inputs.py +116 -0
  99. cubevis/plot/ms_plot/_xds_plot_axes.py +110 -0
  100. cubevis/private/__java__/xml-casa-assembly-1.86.jar +0 -0
  101. cubevis/private/_gclean.py +798 -0
  102. cubevis/private/casashell/createmask.py +332 -0
  103. cubevis/private/casashell/iclean.py +4432 -0
  104. cubevis/private/casatasks/__init__.py +140 -0
  105. cubevis/private/casatasks/createmask.py +86 -0
  106. cubevis/private/casatasks/createregion.py +83 -0
  107. cubevis/private/casatasks/iclean.py +1831 -0
  108. cubevis/readme.rst +16 -0
  109. cubevis/remote/__init__.py +10 -0
  110. cubevis/remote/_gclean.py +61 -0
  111. cubevis/remote/_local.py +287 -0
  112. cubevis/remote/_remote_kernel.py +80 -0
  113. cubevis/toolbox/__init__.py +32 -0
  114. cubevis/toolbox/_app_context.py +74 -0
  115. cubevis/toolbox/_cube.py +3457 -0
  116. cubevis/toolbox/_region_list.py +197 -0
  117. cubevis/utils/_ResourceManager.py +86 -0
  118. cubevis/utils/__init__.py +620 -0
  119. cubevis/utils/_contextmgrchain.py +84 -0
  120. cubevis/utils/_conversion.py +93 -0
  121. cubevis/utils/_copydoc.py +55 -0
  122. cubevis/utils/_docenum.py +25 -0
  123. cubevis/utils/_import_protected_module.py +35 -0
  124. cubevis/utils/_logging.py +85 -0
  125. cubevis/utils/_pkgs.py +77 -0
  126. cubevis/utils/_regions.py +40 -0
  127. cubevis/utils/_static.py +66 -0
  128. cubevis/utils/_tiles.py +167 -0
  129. cubevis-0.5.2.dist-info/METADATA +151 -0
  130. cubevis-0.5.2.dist-info/RECORD +132 -0
  131. cubevis-0.5.2.dist-info/WHEEL +4 -0
  132. cubevis-0.5.2.dist-info/licenses/LICENSE +504 -0
@@ -0,0 +1,130 @@
1
+ from bokeh.models import TextInput, Checkbox
2
+ from ..utils import static_vars
3
+
4
+ ###
5
+ ### These wrappers allow the creation of a SINGLE GUI element that is shared across multiple
6
+ ### tabs or panels.
7
+ ###
8
+ ### THESE FUNCTIONS MAY BE CALLED WITH NO ARGUMENTS TO RETRIEVE THE SINGLE SHARED WIDGET
9
+ ###
10
+
11
+ ###
12
+ ### Functions for creating GUI element providing the tclean iteration parameters...
13
+ ###
14
+ class SharedWidgets:
15
+ def __init__( self ):
16
+ self._nmajor = None
17
+ self._niter = None
18
+ self._cycleniter = None
19
+ self._threshold = None
20
+ self._cyclefactor = None
21
+ self._gain = None
22
+ self._nsigma = None
23
+ self._noisethreshold = None
24
+ self._sidelobethreshold = None
25
+ self._lownoisethreshold = None
26
+ self._minbeamfrac = None
27
+ self._negativethreshold = None
28
+ self._dogrowprune = None
29
+ self._fastnoise = None
30
+
31
+ def nmajor( self, *args, **kwargs ):
32
+ if self._nmajor is None:
33
+ if len(args) == 0 and len(kwargs) == 0:
34
+ raise RuntimeError('No widget is available...')
35
+ self._nmajor = TextInput( *args, **kwargs )
36
+ return self._nmajor
37
+
38
+ def niter( self, *args, **kwargs ):
39
+ if self._niter is None:
40
+ if len(args) == 0 and len(kwargs) == 0:
41
+ raise RuntimeError('No widget is available...')
42
+ self._niter = TextInput( *args, **kwargs )
43
+ return self._niter
44
+
45
+ def cycleniter( self, *args, **kwargs ):
46
+ if self._cycleniter is None:
47
+ if len(args) == 0 and len(kwargs) == 0:
48
+ raise RuntimeError('No widget is available...')
49
+ self._cycleniter = TextInput( *args, **kwargs )
50
+ return self._cycleniter
51
+
52
+ def threshold( self, *args, **kwargs ):
53
+ if self._threshold is None:
54
+ if len(args) == 0 and len(kwargs) == 0:
55
+ raise RuntimeError('No widget is available...')
56
+ self._threshold = TextInput( *args, **kwargs )
57
+ return self._threshold
58
+
59
+ def cyclefactor( self, *args, **kwargs ):
60
+ if self._cyclefactor is None:
61
+ if len(args) == 0 and len(kwargs) == 0:
62
+ raise RuntimeError('No widget is available...')
63
+ self._cyclefactor = TextInput( *args, **kwargs )
64
+ return self._cyclefactor
65
+
66
+ def gain( self, *args, **kwargs ):
67
+ if self._gain is None:
68
+ if len(args) == 0 and len(kwargs) == 0:
69
+ raise RuntimeError('No widget is available...')
70
+ self._gain = TextInput( *args, **kwargs )
71
+ return self._gain
72
+
73
+ def nsigma( self, *args, **kwargs ):
74
+ if self._nsigma is None:
75
+ if len(args) == 0 and len(kwargs) == 0:
76
+ raise RuntimeError('No widget is available...')
77
+ self._nsigma = TextInput( *args, **kwargs )
78
+ return self._nsigma
79
+
80
+ ###
81
+ ### Wrappers providing GUI for auto-masking parameters...
82
+ ###
83
+ def noisethreshold( self, *args, **kwargs ):
84
+ if self._noisethreshold is None:
85
+ if len(args) == 0 and len(kwargs) == 0:
86
+ raise RuntimeError('No widget is available...')
87
+ self._noisethreshold = TextInput( *args, **kwargs )
88
+ return self._noisethreshold
89
+
90
+ def sidelobethreshold( self, *args, **kwargs ):
91
+ if self._sidelobethreshold is None:
92
+ if len(args) == 0 and len(kwargs) == 0:
93
+ raise RuntimeError('No widget is available...')
94
+ self._sidelobethreshold = TextInput( *args, **kwargs )
95
+ return self._sidelobethreshold
96
+
97
+ def lownoisethreshold( self, *args, **kwargs ):
98
+ if self._lownoisethreshold is None:
99
+ if len(args) == 0 and len(kwargs) == 0:
100
+ raise RuntimeError('No widget is available...')
101
+ self._lownoisethreshold = TextInput( *args, **kwargs )
102
+ return self._lownoisethreshold
103
+
104
+ def minbeamfrac( self, *args, **kwargs ):
105
+ if self._minbeamfrac is None:
106
+ if len(args) == 0 and len(kwargs) == 0:
107
+ raise RuntimeError('No widget is available...')
108
+ self._minbeamfrac = TextInput( *args, **kwargs )
109
+ return self._minbeamfrac
110
+
111
+ def negativethreshold( self, *args, **kwargs ):
112
+ if self._negativethreshold is None:
113
+ if len(args) == 0 and len(kwargs) == 0:
114
+ raise RuntimeError('No widget is available...')
115
+ self._negativethreshold = TextInput( *args, **kwargs )
116
+ return self._negativethreshold
117
+
118
+ def dogrowprune( self, *args, **kwargs ):
119
+ if self._dogrowprune is None:
120
+ if len(args) == 0 and len(kwargs) == 0:
121
+ raise RuntimeError('No widget is available...')
122
+ self._dogrowprune = Checkbox( *args, **kwargs )
123
+ return self._dogrowprune
124
+
125
+ def fastnoise( self, *args, **kwargs ):
126
+ if self._fastnoise is None:
127
+ if len(args) == 0 and len(kwargs) == 0:
128
+ raise RuntimeError('No widget is available...')
129
+ self._fastnoise = Checkbox( *args, **kwargs )
130
+ return self._fastnoise