From f382aeae154c8c75d3ad11f44ab28fc557a35436 Mon Sep 17 00:00:00 2001 From: "Michael J. Roberts" Date: Mon, 3 Oct 2022 16:04:40 +0100 Subject: [PATCH] feat: Added GetExposure() to alpaca module. feat: Added GetExposure() to alpaca module. Includes associated test suite for module export definition and expected output. --- coverage.txt | 260 ++++++++++++++++++------------------ pkg/alpacago/camera.go | 21 +++ pkg/alpacago/camera_test.go | 30 +++++ 3 files changed, 181 insertions(+), 130 deletions(-) diff --git a/coverage.txt b/coverage.txt index 1f7933f..f3d1695 100644 --- a/coverage.txt +++ b/coverage.txt @@ -1,23 +1,4 @@ mode: atomic -github.com/observerly/alpacago/pkg/alpacago/monitor.go:10.125,19.2 3 5 -github.com/observerly/alpacago/pkg/alpacago/monitor.go:27.53,29.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/monitor.go:38.60,49.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/monitor.go:57.48,59.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:10.113,19.2 3 5 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:28.54,39.2 3 3 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:47.46,49.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:57.44,59.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:67.60,69.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:77.50,79.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:87.46,89.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:97.50,107.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:115.50,117.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:125.56,127.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:135.35,144.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:153.51,164.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:173.59,184.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:193.61,204.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/rotator.go:213.51,224.2 3 1 github.com/observerly/alpacago/pkg/alpacago/telescope.go:63.134,73.2 3 6 github.com/observerly/alpacago/pkg/alpacago/telescope.go:81.49,83.2 1 2 github.com/observerly/alpacago/pkg/alpacago/telescope.go:92.56,103.2 3 1 @@ -121,8 +102,8 @@ github.com/observerly/alpacago/pkg/alpacago/alpaca.go:37.2,39.35 2 52 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:43.2,50.16 2 52 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:33.13,35.3 1 52 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:39.35,41.3 1 10 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:60.56,62.2 1 206 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:71.104,73.2 1 397 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:60.56,62.2 1 207 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:71.104,73.2 1 399 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:88.119,95.16 3 8 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:100.2,100.20 1 8 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:106.2,108.26 2 8 @@ -153,15 +134,15 @@ github.com/observerly/alpacago/pkg/alpacago/alpaca.go:275.2,275.20 1 2 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:281.2,283.26 2 2 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:270.16,272.3 1 0 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:275.20,278.3 2 0 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:300.141,306.16 3 1 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:311.2,311.20 1 1 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:317.2,319.39 2 1 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:300.141,306.16 3 2 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:311.2,311.20 1 2 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:317.2,319.39 2 2 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:306.16,308.3 1 0 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:311.20,314.3 2 0 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:329.119,335.16 3 191 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:340.2,340.20 1 191 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:346.2,348.29 2 191 -github.com/observerly/alpacago/pkg/alpacago/alpaca.go:352.2,354.12 2 186 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:329.119,335.16 3 192 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:340.2,340.20 1 192 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:346.2,348.29 2 192 +github.com/observerly/alpacago/pkg/alpacago/alpaca.go:352.2,354.12 2 187 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:335.16,337.3 1 0 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:340.20,343.3 2 1 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:348.29,350.3 1 5 @@ -172,18 +153,89 @@ github.com/observerly/alpacago/pkg/alpacago/alpaca.go:393.103,395.2 1 1 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:409.105,411.2 1 1 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:419.94,421.2 1 1 github.com/observerly/alpacago/pkg/alpacago/alpaca.go:429.108,431.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:44.129,53.2 3 5 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:61.55,63.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:72.62,83.2 3 9 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:91.60,93.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:102.64,105.2 2 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:114.64,117.2 2 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:125.61,127.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:135.67,146.2 3 3 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:154.52,163.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:171.46,180.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:188.45,197.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/calibrator.go:205.45,214.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:20.43,25.9 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:26.25,27.17 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:28.10,29.30 1 0 +github.com/observerly/alpacago/pkg/alpacago/camera.go:44.37,49.9 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:50.30,51.17 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:52.10,53.30 1 0 +github.com/observerly/alpacago/pkg/alpacago/camera.go:62.111,71.2 3 5 +github.com/observerly/alpacago/pkg/alpacago/camera.go:79.46,81.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:90.53,101.2 3 71 +github.com/observerly/alpacago/pkg/alpacago/camera.go:109.51,111.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:119.51,121.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:129.43,131.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:139.44,149.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:157.43,159.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:167.44,177.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:186.66,189.2 2 3 +github.com/observerly/alpacago/pkg/alpacago/camera.go:197.47,199.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:207.47,209.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:217.51,219.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:227.49,229.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:237.51,239.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:247.52,249.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:257.48,259.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:267.55,269.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:277.50,279.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:287.55,289.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:297.45,299.2 1 4 +github.com/observerly/alpacago/pkg/alpacago/camera.go:307.39,318.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:326.40,337.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:345.57,347.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:355.65,357.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:376.60,378.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:386.52,388.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:396.52,398.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:406.59,408.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:416.55,418.2 1 3 +github.com/observerly/alpacago/pkg/alpacago/camera.go:426.44,437.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:445.45,456.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:464.57,466.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:474.43,476.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:484.44,495.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:503.46,505.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:513.46,515.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:523.47,525.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:533.45,535.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:543.60,545.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:553.47,555.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:563.49,565.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:573.65,576.16 2 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:580.2,580.21 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:584.2,586.16 2 0 +github.com/observerly/alpacago/pkg/alpacago/camera.go:590.2,590.16 1 0 +github.com/observerly/alpacago/pkg/alpacago/camera.go:576.16,578.3 1 0 +github.com/observerly/alpacago/pkg/alpacago/camera.go:580.21,582.3 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:586.16,588.3 1 0 +github.com/observerly/alpacago/pkg/alpacago/camera.go:599.61,601.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:609.45,611.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:619.46,621.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:629.46,631.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:639.52,641.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:649.53,660.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:668.53,670.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:678.54,689.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:698.73,700.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:708.51,710.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:718.51,720.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:728.50,730.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:738.58,749.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:757.54,759.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:767.50,769.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:777.54,780.2 2 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:788.69,790.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:798.77,808.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:816.45,818.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:826.48,836.2 3 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:844.45,846.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:854.48,864.2 3 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:872.60,874.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/camera.go:882.76,892.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:900.40,909.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:917.75,928.2 3 0 +github.com/observerly/alpacago/pkg/alpacago/camera.go:936.68,947.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/camera.go:955.39,964.2 3 1 github.com/observerly/alpacago/pkg/alpacago/conditions.go:10.137,19.2 3 5 github.com/observerly/alpacago/pkg/alpacago/conditions.go:27.59,29.2 1 2 github.com/observerly/alpacago/pkg/alpacago/conditions.go:38.66,49.2 3 19 @@ -255,96 +307,6 @@ github.com/observerly/alpacago/pkg/alpacago/dome.go:343.34,352.2 3 1 github.com/observerly/alpacago/pkg/alpacago/dome.go:360.55,371.2 3 1 github.com/observerly/alpacago/pkg/alpacago/dome.go:379.53,390.2 3 1 github.com/observerly/alpacago/pkg/alpacago/dome.go:398.53,409.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:20.43,25.9 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:26.25,27.17 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:28.10,29.30 1 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:44.37,49.9 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:50.30,51.17 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:52.10,53.30 1 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:62.111,71.2 3 5 -github.com/observerly/alpacago/pkg/alpacago/camera.go:79.46,81.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:90.53,101.2 3 70 -github.com/observerly/alpacago/pkg/alpacago/camera.go:109.51,111.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:119.51,121.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:129.43,131.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:139.44,149.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:157.43,159.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:167.44,177.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:186.66,189.2 2 3 -github.com/observerly/alpacago/pkg/alpacago/camera.go:197.47,199.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:207.47,209.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:217.51,219.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:227.49,229.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:237.51,239.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:247.52,249.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:257.48,259.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:267.55,269.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:277.50,279.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:287.55,289.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:297.45,299.2 1 4 -github.com/observerly/alpacago/pkg/alpacago/camera.go:307.39,318.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:326.40,337.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:345.57,347.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:355.65,357.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:362.60,364.2 1 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:372.52,374.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:382.52,384.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:392.59,394.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:402.55,404.2 1 3 -github.com/observerly/alpacago/pkg/alpacago/camera.go:412.44,423.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:431.45,442.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:450.57,452.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:460.43,462.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:470.44,481.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:489.46,491.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:499.46,501.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:509.47,511.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:519.45,521.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:529.60,531.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:539.47,541.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:549.49,551.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:559.65,562.16 2 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:566.2,566.21 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:570.2,572.16 2 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:576.2,576.16 1 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:562.16,564.3 1 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:566.21,568.3 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:572.16,574.3 1 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:585.61,587.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:595.45,597.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:605.46,607.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:615.46,617.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:625.52,627.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:635.53,646.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:654.53,656.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:664.54,675.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:684.73,686.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:694.51,696.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:704.51,706.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:714.50,716.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:724.58,735.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:743.54,745.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:753.50,755.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:763.54,766.2 2 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:774.69,776.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:784.77,794.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:802.45,804.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:812.48,822.2 3 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:830.45,832.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:840.48,850.2 3 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:858.60,860.2 1 2 -github.com/observerly/alpacago/pkg/alpacago/camera.go:868.76,878.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:886.40,895.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:903.75,914.2 3 0 -github.com/observerly/alpacago/pkg/alpacago/camera.go:922.68,933.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/camera.go:941.39,950.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:10.121,19.2 3 5 -github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:27.51,29.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:38.58,49.2 3 1 -github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:57.59,59.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:67.52,69.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:77.52,79.2 1 1 -github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:87.57,97.2 3 1 github.com/observerly/alpacago/pkg/alpacago/focuser.go:10.113,19.2 3 5 github.com/observerly/alpacago/pkg/alpacago/focuser.go:28.54,39.2 3 4 github.com/observerly/alpacago/pkg/alpacago/focuser.go:47.46,49.2 1 1 @@ -359,3 +321,41 @@ github.com/observerly/alpacago/pkg/alpacago/focuser.go:137.70,139.2 1 1 github.com/observerly/alpacago/pkg/alpacago/focuser.go:147.53,149.2 1 1 github.com/observerly/alpacago/pkg/alpacago/focuser.go:157.35,166.2 3 0 github.com/observerly/alpacago/pkg/alpacago/focuser.go:176.49,187.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/monitor.go:10.125,19.2 3 5 +github.com/observerly/alpacago/pkg/alpacago/monitor.go:27.53,29.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/monitor.go:38.60,49.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/monitor.go:57.48,59.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:44.129,53.2 3 5 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:61.55,63.2 1 2 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:72.62,83.2 3 9 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:91.60,93.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:102.64,105.2 2 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:114.64,117.2 2 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:125.61,127.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:135.67,146.2 3 3 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:154.52,163.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:171.46,180.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:188.45,197.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/calibrator.go:205.45,214.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:10.121,19.2 3 5 +github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:27.51,29.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:38.58,49.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:57.59,59.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:67.52,69.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:77.52,79.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:87.57,97.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:10.113,19.2 3 5 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:28.54,39.2 3 3 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:47.46,49.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:57.44,59.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:67.60,69.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:77.50,79.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:87.46,89.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:97.50,107.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:115.50,117.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:125.56,127.2 1 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:135.35,144.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:153.51,164.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:173.59,184.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:193.61,204.2 3 1 +github.com/observerly/alpacago/pkg/alpacago/rotator.go:213.51,224.2 3 1 diff --git a/pkg/alpacago/camera.go b/pkg/alpacago/camera.go index 1d5c0e3..a72215c 100644 --- a/pkg/alpacago/camera.go +++ b/pkg/alpacago/camera.go @@ -356,6 +356,27 @@ func (c *Camera) GetGainInElectronsPerADUnit() (float64, error) { return c.Alpaca.GetFloat64Response("camera", c.DeviceNumber, "electronsperadu") } +/* + GetExposure() + + @returns Returns an array of 32bit integers containing the pixel values from the last exposure. This + call can return either a 2 dimension (monochrome images) or 3 dimension (colour or multi-plane images) + array of size NumX * NumY or NumX * NumY * NumPlanes. Where applicable, the size of NumPlanes has + to be determined by inspection of the returned Array. + + Since 32bit integers are always returned by this call, the returned JSON Type value (0 = Unknown, 1 = short(16bit), + 2 = int(32bit), 3 = Double) is always 2. The number of planes is given in the returned Rank value. + + When de-serialising to an object it is essential to know the array Rank beforehand so that the correct data + class can be used. This can be achieved through a regular expression or by direct parsing of the returned + JSON string to extract the Type and Rank values before de-serialising. + + @see https://ascom-standards.org/api/#/Camera%20Specific%20Methods/get_camera__device_number__imagearray +*/ +func (c *Camera) GetExposure() ([][]uint32, uint32, error) { + return c.Alpaca.GetUInt32Rank2ArrayResponse("camera", c.DeviceNumber, "imagearray") +} + /* GetExposureMax() diff --git a/pkg/alpacago/camera_test.go b/pkg/alpacago/camera_test.go index 8bf2487..4d7ec62 100644 --- a/pkg/alpacago/camera_test.go +++ b/pkg/alpacago/camera_test.go @@ -1501,3 +1501,33 @@ func TestNewCameraStopExposure(t *testing.T) { t.Errorf("got %q", camera.Alpaca.ErrorMessage) } } + +func TestNewCameraGetExposure(t *testing.T) { + camera.SetConnected(true) + + var got, rank, err = camera.GetExposure() + + ysize := len(got[0]) + + xsize := len(got) + + if xsize != 800 { + t.Errorf("got %v, but expected the CCD width to be 800 pixels", xsize) + } + + if ysize != 600 { + t.Errorf("got %v, but expected the CCD height to be 600 pixels", ysize) + } + + if err != nil { + t.Errorf("got %q", err) + } + + if rank > 3 { + t.Errorf("got %v, but expected the rank of the array to be a realiostic value", rank) + } + + if camera.Alpaca.ErrorNumber != 0 { + t.Errorf("got %q", camera.Alpaca.ErrorMessage) + } +}