191 return ImageExposureNP[0].getValue();
200 return ExposureDuration;
237 return SendCompressed;
270 return ImagePixelSizeNP;
287 void setFrame(uint32_t subx, uint32_t suby, uint32_t subw, uint32_t subh);
294 void setBin(uint8_t hor, uint8_t ver);
306 void setMinMaxStep(
const char *property,
const char *element,
double min,
double max,
double step,
307 bool sendToClient =
true);
397 return ImageExtention;
422 return &m_FITSFilePointer;
427 return &m_FITSMemorySize;
432 return &m_FITSMemoryBlock;
459 double PixelSizeX {0};
461 double PixelSizeY {0};
463 uint8_t BitsPerPixel {8};
466 uint8_t *RawFrame {
nullptr};
468 uint32_t RawFrameSize {0};
470 uint8_t *BinFrame {
nullptr};
472 bool SendCompressed {
false};
476 double ExposureDuration {0};
478 timeval StartExposureTime;
481 void * m_FITSMemoryBlock {
nullptr};
482 size_t m_FITSMemorySize {2880};
483 fitsfile * m_FITSFilePointer {
nullptr};
The CCDChip class provides functionality of a CCD Chip within a CCD.
void setExposureComplete()
setExposureComplete Mark exposure as complete by setting ImageExposure property to IPS_OK
char * getImageExtension()
void setFrameBuffer(uint8_t *buffer)
setFrameBuffer Set raw frame buffer pointer.
int getSubX() const
getSubX Get the starting left coordinates (X) of the frame.
int getSubY() const
getSubY Get the starting top coordinates (Y) of the frame.
bool finishFITSFile(int &status)
Finish any pending write to fits file.
float getPixelSizeY() const
getPixelSizeY Get vertical pixel size in microns.
void setExposureDuration(double duration)
setExposureDuration Set desired CCD frame exposure duration for next exposure. You must call this fun...
void setResolution(uint32_t x, uint32_t y)
setResolution set CCD Chip resolution
int getSubH() const
getSubH Get the height of the frame
double getExposureDuration() const
getExposureDuration Get requested exposure duration for the CCD chip in seconds.
void setCompressed(bool cmp)
setCompressed Set whether a frame is compressed after exposure?
int getBPP() const
getBPP Get CCD Chip depth (bits per pixel).
const char * getExposureStartTime()
getExposureStartTime
CCD_FRAME getFrameType() const
isInterlaced
int getBinY() const
getBinY Get vertical binning of the CCD chip.
void closeFITSFile()
closeFITSFile Close the in-memory FITS File.
float getPixelSizeX() const
getPixelSizeX Get horizontal pixel size in microns.
friend class StreamRecoder
void setFrame(uint32_t subx, uint32_t suby, uint32_t subw, uint32_t subh)
setFrame Set desired frame resolutoin for an exposure.
void setMinMaxStep(const char *property, const char *element, double min, double max, double step, bool sendToClient=true)
setMinMaxStep for a number property element
int getXRes() const
getXRes Get the horizontal resolution in pixels of the CCD Chip.
int getBinX() const
getBinX Get horizontal binning of the CCD chip.
bool isCompressed() const
isCompressed
void setFrameType(CCD_FRAME type)
setFrameType Set desired frame type for next exposure.
void setImageExtension(const char *ext)
setImageExtension Set image extension
size_t * fitsMemorySizePointer()
void setPixelSize(double x, double y)
setPixelSize Set CCD Chip pixel size
uint8_t * getFrameBuffer()
getFrameBuffer Get raw frame buffer of the CCD chip.
void setExposureFailed()
setExposureFailed Alert the client that the exposure failed.
void setExposureLeft(double duration)
setExposureLeft Update exposure time left. Inform the client of the new exposure time left value.
int getSubW() const
getSubW Get the width of the frame
const char * getFrameTypeName(CCD_FRAME fType)
getFrameTypeName returns CCD Frame type name
double getExposureLeft() const
getExposureLeft Get exposure time left in seconds.
void setFrameBufferSize(uint32_t nbuf, bool allocMem=true)
setFrameBufferSize Set desired frame buffer size. The function will allocate memory accordingly....
int getFrameBufferSize() const
getFrameBufferSize Get allocated frame buffer size to hold the CCD image frame.
void ** fitsMemoryBlockPointer()
void setBin(uint8_t hor, uint8_t ver)
setBin Set CCD Chip binnig
void binBayerFrame()
binBayerFrame Perform software binning on a 2x2 Bayer matrix CCD frame. Only use this function if har...
int getYRes() const
Get the vertical resolution in pixels of the CCD Chip.
void binFrame()
binFrame Perform software binning on the CCD frame. Only use this function if hardware binning is not...
fitsfile ** fitsFilePointer()
void setBPP(uint8_t bpp)
setBPP Set depth of CCD chip.
bool openFITSFile(uint32_t size, int &status)
openFITSFile Allocate memory buffer for internal FITS file structure and open
void setNAxis(int value)
setNAxis Set FITS number of axis
INDI::PropertyNumber getCCDInfo()
Return CCD Info Property.
Class to provide general functionality of CCD cameras with a single CCD sensor, or a primary CCD sens...
Constants and Data structure definitions for the interface to the reference INDI C API implementation...
Namespace to encapsulate INDI client, drivers, and mediator classes.
Number vector property descriptor.
Switch vector property descriptor.