TwiceAsNice
2019-02-18
|
The CCDChip class provides functionality of a CCD Chip within a CCD. More...
#include <indiccd.h>
Public Types | |
enum | CCD_FRAME { LIGHT_FRAME = 0, BIAS_FRAME, DARK_FRAME, FLAT_FRAME, LIGHT_FRAME = 0, BIAS_FRAME, DARK_FRAME, FLAT_FRAME } |
enum | CCD_FRAME_INDEX { FRAME_X, FRAME_Y, FRAME_W, FRAME_H, FRAME_X, FRAME_Y, FRAME_W, FRAME_H } |
enum | CCD_BIN_INDEX { BIN_W, BIN_H, BIN_W, BIN_H } |
enum | CCD_INFO_INDEX { CCD_MAX_X, CCD_MAX_Y, CCD_PIXEL_SIZE, CCD_PIXEL_SIZE_X, CCD_PIXEL_SIZE_Y, CCD_BITSPERPIXEL, CCD_MAX_X, CCD_MAX_Y, CCD_PIXEL_SIZE, CCD_PIXEL_SIZE_X, CCD_PIXEL_SIZE_Y, CCD_BITSPERPIXEL } |
enum | CCD_FRAME { LIGHT_FRAME = 0, BIAS_FRAME, DARK_FRAME, FLAT_FRAME, LIGHT_FRAME = 0, BIAS_FRAME, DARK_FRAME, FLAT_FRAME } |
enum | CCD_FRAME_INDEX { FRAME_X, FRAME_Y, FRAME_W, FRAME_H, FRAME_X, FRAME_Y, FRAME_W, FRAME_H } |
enum | CCD_BIN_INDEX { BIN_W, BIN_H, BIN_W, BIN_H } |
enum | CCD_INFO_INDEX { CCD_MAX_X, CCD_MAX_Y, CCD_PIXEL_SIZE, CCD_PIXEL_SIZE_X, CCD_PIXEL_SIZE_Y, CCD_BITSPERPIXEL, CCD_MAX_X, CCD_MAX_Y, CCD_PIXEL_SIZE, CCD_PIXEL_SIZE_X, CCD_PIXEL_SIZE_Y, CCD_BITSPERPIXEL } |
Public Member Functions | |
CCDChip () | |
~CCDChip () | |
int | getXRes () |
getXRes Get the horizontal resolution in pixels of the CCD Chip. More... | |
int | getYRes () |
Get the vertical resolution in pixels of the CCD Chip. More... | |
int | getSubX () |
getSubX Get the starting left coordinates (X) of the frame. More... | |
int | getSubY () |
getSubY Get the starting top coordinates (Y) of the frame. More... | |
int | getSubW () |
getSubW Get the width of the frame More... | |
int | getSubH () |
getSubH Get the height of the frame More... | |
int | getBinX () |
getBinX Get horizontal binning of the CCD chip. More... | |
int | getBinY () |
getBinY Get vertical binning of the CCD chip. More... | |
float | getPixelSizeX () |
getPixelSizeX Get horizontal pixel size in microns. More... | |
float | getPixelSizeY () |
getPixelSizeY Get vertical pixel size in microns. More... | |
int | getBPP () |
getBPP Get CCD Chip depth (bits per pixel). More... | |
int | getFrameBufferSize () |
getFrameBufferSize Get allocated frame buffer size to hold the CCD image frame. More... | |
double | getExposureLeft () |
getExposureLeft Get exposure time left in seconds. More... | |
double | getExposureDuration () |
getExposureDuration Get requested exposure duration for the CCD chip in seconds. More... | |
const char * | getExposureStartTime () |
getExposureStartTime More... | |
uint8_t * | getFrameBuffer () |
getFrameBuffer Get raw frame buffer of the CCD chip. More... | |
void | setFrameBuffer (uint8_t *buffer) |
setFrameBuffer Set raw frame buffer pointer. More... | |
bool | isCompressed () |
isCompressed More... | |
bool | isInterlaced () |
isInterlaced More... | |
CCD_FRAME | getFrameType () |
getFrameType More... | |
const char * | getFrameTypeName (CCD_FRAME fType) |
getFrameTypeName returns CCD Frame type name More... | |
INumberVectorProperty * | getCCDInfo () |
Return CCD Info Property. More... | |
void | setResolution (int x, int y) |
setResolution set CCD Chip resolution More... | |
void | setFrame (int subx, int suby, int subw, int subh) |
setFrame Set desired frame resolutoin for an exposure. More... | |
void | setBin (int hor, int ver) |
setBin Set CCD Chip binnig More... | |
void | setMinMaxStep (const char *property, const char *element, double min, double max, double step, bool sendToClient=true) |
setMinMaxStep for a number property element More... | |
void | setPixelSize (float x, float y) |
setPixelSize Set CCD Chip pixel size More... | |
void | setCompressed (bool cmp) |
setCompressed Set whether a frame is compressed after exposure? More... | |
void | setInterlaced (bool intr) |
setInterlaced Set whether the CCD chip is interlaced or not? More... | |
void | setFrameBufferSize (int nbuf, bool allocMem=true) |
setFrameBufferSize Set desired frame buffer size. More... | |
void | setBPP (int bpp) |
setBPP Set depth of CCD chip. More... | |
void | setFrameType (CCD_FRAME type) |
setFrameType Set desired frame type for next exposure. More... | |
void | setExposureDuration (double duration) |
setExposureDuration Set desired CCD frame exposure duration for next exposure. More... | |
void | setExposureLeft (double duration) |
setExposureLeft Update exposure time left. More... | |
void | setExposureFailed () |
setExposureFailed Alert the client that the exposure failed. More... | |
int | getNAxis () const |
void | setNAxis (int value) |
setNAxis Set FITS number of axis More... | |
void | setImageExtension (const char *ext) |
setImageExtension Set image exntension More... | |
char * | getImageExtension () |
bool | isExposing () |
void | binFrame () |
binFrame Perform softwre binning on the CCD frame. More... | |
CCDChip () | |
~CCDChip () | |
int | getXRes () |
getXRes Get the horizontal resolution in pixels of the CCD Chip. More... | |
int | getYRes () |
Get the vertical resolution in pixels of the CCD Chip. More... | |
int | getSubX () |
getSubX Get the starting left coordinates (X) of the frame. More... | |
int | getSubY () |
getSubY Get the starting top coordinates (Y) of the frame. More... | |
int | getSubW () |
getSubW Get the width of the frame More... | |
int | getSubH () |
getSubH Get the height of the frame More... | |
int | getBinX () |
getBinX Get horizontal binning of the CCD chip. More... | |
int | getBinY () |
getBinY Get vertical binning of the CCD chip. More... | |
float | getPixelSizeX () |
getPixelSizeX Get horizontal pixel size in microns. More... | |
float | getPixelSizeY () |
getPixelSizeY Get vertical pixel size in microns. More... | |
int | getBPP () |
getBPP Get CCD Chip depth (bits per pixel). More... | |
int | getFrameBufferSize () |
getFrameBufferSize Get allocated frame buffer size to hold the CCD image frame. More... | |
double | getExposureLeft () |
getExposureLeft Get exposure time left in seconds. More... | |
double | getExposureDuration () |
getExposureDuration Get requested exposure duration for the CCD chip in seconds. More... | |
const char * | getExposureStartTime () |
getExposureStartTime More... | |
uint8_t * | getFrameBuffer () |
getFrameBuffer Get raw frame buffer of the CCD chip. More... | |
void | setFrameBuffer (uint8_t *buffer) |
setFrameBuffer Set raw frame buffer pointer. More... | |
bool | isCompressed () |
isCompressed More... | |
bool | isInterlaced () |
isInterlaced More... | |
CCD_FRAME | getFrameType () |
getFrameType More... | |
const char * | getFrameTypeName (CCD_FRAME fType) |
getFrameTypeName returns CCD Frame type name More... | |
INumberVectorProperty * | getCCDInfo () |
Return CCD Info Property. More... | |
void | setResolution (int x, int y) |
setResolution set CCD Chip resolution More... | |
void | setFrame (int subx, int suby, int subw, int subh) |
setFrame Set desired frame resolutoin for an exposure. More... | |
void | setBin (int hor, int ver) |
setBin Set CCD Chip binnig More... | |
void | setMinMaxStep (const char *property, const char *element, double min, double max, double step, bool sendToClient=true) |
setMinMaxStep for a number property element More... | |
void | setPixelSize (float x, float y) |
setPixelSize Set CCD Chip pixel size More... | |
void | setCompressed (bool cmp) |
setCompressed Set whether a frame is compressed after exposure? More... | |
void | setInterlaced (bool intr) |
setInterlaced Set whether the CCD chip is interlaced or not? More... | |
void | setFrameBufferSize (int nbuf, bool allocMem=true) |
setFrameBufferSize Set desired frame buffer size. More... | |
void | setBPP (int bpp) |
setBPP Set depth of CCD chip. More... | |
void | setFrameType (CCD_FRAME type) |
setFrameType Set desired frame type for next exposure. More... | |
void | setExposureDuration (double duration) |
setExposureDuration Set desired CCD frame exposure duration for next exposure. More... | |
void | setExposureLeft (double duration) |
setExposureLeft Update exposure time left. More... | |
void | setExposureFailed () |
setExposureFailed Alert the client that the exposure failed. More... | |
int | getNAxis () const |
void | setNAxis (int value) |
setNAxis Set FITS number of axis More... | |
void | setImageExtension (const char *ext) |
setImageExtension Set image exntension More... | |
char * | getImageExtension () |
bool | isExposing () |
void | binFrame () |
binFrame Perform softwre binning on the CCD frame. More... | |
Friends | |
class | CCD |
class | StreamRecoder |
INDI::CCDChip::CCDChip | ( | ) |
INDI::CCDChip::~CCDChip | ( | ) |
INDI::CCDChip::CCDChip | ( | ) |
INDI::CCDChip::~CCDChip | ( | ) |
void INDI::CCDChip::binFrame | ( | ) |
binFrame Perform softwre binning on the CCD frame.
Only use this function if hardware binning is not supported.
void INDI::CCDChip::binFrame | ( | ) |
binFrame Perform softwre binning on the CCD frame.
Only use this function if hardware binning is not supported.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
getBPP Get CCD Chip depth (bits per pixel).
|
inline |
getBPP Get CCD Chip depth (bits per pixel).
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
getExposureLeft Get exposure time left in seconds.
|
inline |
getExposureLeft Get exposure time left in seconds.
const char* INDI::CCDChip::getExposureStartTime | ( | ) |
getExposureStartTime
const char * INDI::CCDChip::getExposureStartTime | ( | ) |
getExposureStartTime
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
int INDI::CCDChip::getNAxis | ( | ) | const |
int INDI::CCDChip::getNAxis | ( | ) | const |
|
inline |
getPixelSizeX Get horizontal pixel size in microns.
|
inline |
getPixelSizeX Get horizontal pixel size in microns.
|
inline |
getPixelSizeY Get vertical pixel size in microns.
|
inline |
getPixelSizeY Get vertical pixel size in microns.
|
inline |
getSubH Get the height of the frame
|
inline |
getSubH Get the height of the frame
|
inline |
getSubW Get the width of the frame
|
inline |
getSubW Get the width of the frame
|
inline |
getSubX Get the starting left coordinates (X) of the frame.
|
inline |
getSubX Get the starting left coordinates (X) of the frame.
|
inline |
getSubY Get the starting top coordinates (Y) of the frame.
|
inline |
getSubY Get the starting top coordinates (Y) of the frame.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
isCompressed
|
inline |
isCompressed
|
inline |
|
inline |
|
inline |
isInterlaced
|
inline |
isInterlaced
void INDI::CCDChip::setBin | ( | int | hor, |
int | ver | ||
) |
setBin Set CCD Chip binnig
hor | Horizontal binning. |
ver | Vertical binning. |
void INDI::CCDChip::setBin | ( | int | hor, |
int | ver | ||
) |
setBin Set CCD Chip binnig
hor | Horizontal binning. |
ver | Vertical binning. |
void INDI::CCDChip::setBPP | ( | int | bpp | ) |
setBPP Set depth of CCD chip.
bpp | bits per pixel |
void INDI::CCDChip::setBPP | ( | int | bpp | ) |
setBPP Set depth of CCD chip.
bpp | bits per pixel |
void INDI::CCDChip::setCompressed | ( | bool | cmp | ) |
setCompressed Set whether a frame is compressed after exposure?
cmp | If true, compress frame. |
void INDI::CCDChip::setCompressed | ( | bool | cmp | ) |
setCompressed Set whether a frame is compressed after exposure?
cmp | If true, compress frame. |
void INDI::CCDChip::setExposureDuration | ( | double | duration | ) |
setExposureDuration Set desired CCD frame exposure duration for next exposure.
You must call this function immediately before starting the actual exposure as it is used to calculate the timestamp used for the FITS header.
duration | exposure duration in seconds. |
void INDI::CCDChip::setExposureDuration | ( | double | duration | ) |
setExposureDuration Set desired CCD frame exposure duration for next exposure.
You must call this function immediately before starting the actual exposure as it is used to calculate the timestamp used for the FITS header.
duration | exposure duration in seconds. |
void INDI::CCDChip::setExposureFailed | ( | ) |
setExposureFailed Alert the client that the exposure failed.
void INDI::CCDChip::setExposureFailed | ( | ) |
setExposureFailed Alert the client that the exposure failed.
void INDI::CCDChip::setExposureLeft | ( | double | duration | ) |
setExposureLeft Update exposure time left.
Inform the client of the new exposure time left value.
duration | exposure duration left in seconds. |
void INDI::CCDChip::setExposureLeft | ( | double | duration | ) |
setExposureLeft Update exposure time left.
Inform the client of the new exposure time left value.
duration | exposure duration left in seconds. |
void INDI::CCDChip::setFrame | ( | int | subx, |
int | suby, | ||
int | subw, | ||
int | subh | ||
) |
setFrame Set desired frame resolutoin for an exposure.
subx | Left position. |
suby | Top position. |
subw | unbinned width of the frame. |
subh | unbinned height of the frame. |
void INDI::CCDChip::setFrame | ( | int | subx, |
int | suby, | ||
int | subw, | ||
int | subh | ||
) |
setFrame Set desired frame resolutoin for an exposure.
subx | Left position. |
suby | Top position. |
subw | unbinned width of the frame. |
subh | unbinned height of the frame. |
|
inline |
setFrameBuffer Set raw frame buffer pointer.
buffer | pointer to frame buffer /note CCD Chip allocates the frame buffer internally once SetFrameBufferSize is called with allocMem set to true which is the default behavior. If you allocated the memory yourself (i.e. allocMem is false), then you must call this function to set the pointer to the raw frame buffer. |
|
inline |
setFrameBuffer Set raw frame buffer pointer.
buffer | pointer to frame buffer /note CCD Chip allocates the frame buffer internally once SetFrameBufferSize is called with allocMem set to true which is the default behavior. If you allocated the memory yourself (i.e. allocMem is false), then you must call this function to set the pointer to the raw frame buffer. |
setFrameBufferSize Set desired frame buffer size.
The function will allocate memory accordingly. The frame size depends on the desired frame resolution (Left, Top, Width, Height), depth of the CCD chip (bpp), and binning settings. You must set the frame size any time any of the prior parameters gets updated.
nbuf | size of buffer in bytes. |
allocMem | if True, it will allocate memory of nbut size bytes. |
setFrameBufferSize Set desired frame buffer size.
The function will allocate memory accordingly. The frame size depends on the desired frame resolution (Left, Top, Width, Height), depth of the CCD chip (bpp), and binning settings. You must set the frame size any time any of the prior parameters gets updated.
nbuf | size of buffer in bytes. |
allocMem | if True, it will allocate memory of nbut size bytes. |
void INDI::CCDChip::setFrameType | ( | CCD_FRAME | type | ) |
setFrameType Set desired frame type for next exposure.
type | desired CCD frame type. |
void INDI::CCDChip::setFrameType | ( | CCD_FRAME | type | ) |
setFrameType Set desired frame type for next exposure.
type | desired CCD frame type. |
void INDI::CCDChip::setImageExtension | ( | const char * | ext | ) |
setImageExtension Set image exntension
ext | extension (fits, jpeg, raw..etc) |
void INDI::CCDChip::setImageExtension | ( | const char * | ext | ) |
setImageExtension Set image exntension
ext | extension (fits, jpeg, raw..etc) |
void INDI::CCDChip::setInterlaced | ( | bool | intr | ) |
void INDI::CCDChip::setInterlaced | ( | bool | intr | ) |
void INDI::CCDChip::setMinMaxStep | ( | const char * | property, |
const char * | element, | ||
double | min, | ||
double | max, | ||
double | step, | ||
bool | sendToClient = true |
||
) |
setMinMaxStep for a number property element
property | Property name |
element | Element name |
min | Minimum element value |
max | Maximum element value |
step | Element step value |
sendToClient | If true (default), the element limits are updated and is sent to the client. If false, the element limits are updated without getting sent to the client. |
void INDI::CCDChip::setMinMaxStep | ( | const char * | property, |
const char * | element, | ||
double | min, | ||
double | max, | ||
double | step, | ||
bool | sendToClient = true |
||
) |
setMinMaxStep for a number property element
property | Property name |
element | Element name |
min | Minimum element value |
max | Maximum element value |
step | Element step value |
sendToClient | If true (default), the element limits are updated and is sent to the client. If false, the element limits are updated without getting sent to the client. |
void INDI::CCDChip::setNAxis | ( | int | value | ) |
setNAxis Set FITS number of axis
value | number of axis |
void INDI::CCDChip::setNAxis | ( | int | value | ) |
setNAxis Set FITS number of axis
value | number of axis |
void INDI::CCDChip::setPixelSize | ( | float | x, |
float | y | ||
) |
setPixelSize Set CCD Chip pixel size
x | Horziontal pixel size in microns. |
y | Vertical pixel size in microns. |
void INDI::CCDChip::setPixelSize | ( | float | x, |
float | y | ||
) |
setPixelSize Set CCD Chip pixel size
x | Horziontal pixel size in microns. |
y | Vertical pixel size in microns. |
void INDI::CCDChip::setResolution | ( | int | x, |
int | y | ||
) |
setResolution set CCD Chip resolution
x | width |
y | height |
void INDI::CCDChip::setResolution | ( | int | x, |
int | y | ||
) |
setResolution set CCD Chip resolution
x | width |
y | height |
|
friend |
|
friend |
|
private |
|
private |
|
private |
|
private |
Binning requested in the x direction.
|
private |
Binning requested in the y direction.
|
private |
Bytes per Pixel.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Pixel size in microns, x direction.
|
private |
Pixel size in microns, y direction.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
UNBINNED height of the subframe.
|
private |
UNBINNED width of the subframe.
|
private |
Left side of the subframe we are requesting.
|
private |
Top of the subframe requested.
|
private |
Native x resolution of the ccd.
|
private |
Native y resolution of the ccd.