Instrument Neutral Distributed Interface INDI 2.2.5
Public Member Functions | Protected Attributes | List of all members
INDI::StreamManager Class Reference

#include <streammanager.h>

Public Member Functions

 StreamManager (DefaultDevice *currentDevice)
 
virtual ~StreamManager ()
 
virtual void ISGetProperties (const char *dev)
 
virtual bool ISNewSwitch (const char *dev, const char *name, ISState *states, char *names[], int n)
 
virtual bool ISNewText (const char *dev, const char *name, char *texts[], char *names[], int n)
 
virtual bool ISNewNumber (const char *dev, const char *name, double values[], char *names[], int n)
 
virtual bool initProperties ()
 
virtual bool updateProperties ()
 
virtual bool saveConfigItems (FILE *fp)
 
void newFrame (const uint8_t *buffer, uint32_t nbytes, uint64_t timestamp=0)
 newFrame CCD drivers call this function when a new frame is received. It is then streamed, or recorded, or both according to the settings in the streamer.
 
bool close ()
 
void setStreamingExposureEnabled (bool enable)
 setStreamingExposureEnabled Can stream exposure time be changed?
 
bool setStream (bool enable)
 setStream Enables (starts) or disables (stops) streaming.
 
void setSize (uint16_t width, uint16_t height=1)
 
bool setPixelFormat (INDI_PIXEL_FORMAT pixelFormat, uint8_t pixelDepth=8)
 
bool isDirectRecording () const
 
bool isStreaming () const
 
bool isRecording () const
 
bool isBusy () const
 
double getTargetFPS () const
 
double getTargetExposure () const
 
void getStreamFrame (uint16_t *x, uint16_t *y, uint16_t *w, uint16_t *h) const
 
RecorderInterface * getRecorder () const
 
const char * getDeviceName () const
 

Protected Attributes

std::shared_ptr< StreamManagerPrivate > d_ptr
 

Detailed Description

Definition at line 97 of file streammanager.h.

Constructor & Destructor Documentation

◆ StreamManager()

StreamManager::StreamManager ( DefaultDevice *  currentDevice)

Definition at line 77 of file streammanager.cpp.

◆ ~StreamManager()

StreamManager::~StreamManager ( )
virtual

Definition at line 81 of file streammanager.cpp.

Member Function Documentation

◆ close()

bool StreamManager::close ( )

Definition at line 567 of file streammanager.cpp.

◆ getDeviceName()

const char * StreamManager::getDeviceName ( ) const

Definition at line 89 of file streammanager.cpp.

◆ getRecorder()

RecorderInterface * StreamManager::getRecorder ( ) const

Definition at line 1265 of file streammanager.cpp.

◆ getStreamFrame()

void StreamManager::getStreamFrame ( uint16_t *  x,
uint16_t *  y,
uint16_t *  w,
uint16_t *  h 
) const

Definition at line 1210 of file streammanager.cpp.

◆ getTargetExposure()

double StreamManager::getTargetExposure ( ) const

Definition at line 1300 of file streammanager.cpp.

◆ getTargetFPS()

double StreamManager::getTargetFPS ( ) const

Definition at line 1295 of file streammanager.cpp.

◆ initProperties()

bool StreamManager::initProperties ( )
virtual

Definition at line 196 of file streammanager.cpp.

◆ isBusy()

bool StreamManager::isBusy ( ) const

Definition at line 1289 of file streammanager.cpp.

◆ isDirectRecording()

bool StreamManager::isDirectRecording ( ) const

Definition at line 1271 of file streammanager.cpp.

◆ ISGetProperties()

void StreamManager::ISGetProperties ( const char *  dev)
virtual

Definition at line 224 of file streammanager.cpp.

◆ ISNewNumber()

bool StreamManager::ISNewNumber ( const char *  dev,
const char *  name,
double  values[],
char *  names[],
int  n 
)
virtual

Definition at line 1061 of file streammanager.cpp.

◆ ISNewSwitch()

bool StreamManager::ISNewSwitch ( const char *  dev,
const char *  name,
ISState *  states,
char *  names[],
int  n 
)
virtual

Definition at line 944 of file streammanager.cpp.

◆ ISNewText()

bool StreamManager::ISNewText ( const char *  dev,
const char *  name,
char *  texts[],
char *  names[],
int  n 
)
virtual

Definition at line 974 of file streammanager.cpp.

◆ isRecording()

bool StreamManager::isRecording ( ) const

Definition at line 1283 of file streammanager.cpp.

◆ isStreaming()

bool StreamManager::isStreaming ( ) const

Definition at line 1277 of file streammanager.cpp.

◆ newFrame()

void StreamManager::newFrame ( const uint8_t *  buffer,
uint32_t  nbytes,
uint64_t  timestamp = 0 
)

newFrame CCD drivers call this function when a new frame is received. It is then streamed, or recorded, or both according to the settings in the streamer.

Definition at line 370 of file streammanager.cpp.

◆ saveConfigItems()

bool StreamManager::saveConfigItems ( FILE *  fp)
virtual

Definition at line 1177 of file streammanager.cpp.

◆ setPixelFormat()

bool StreamManager::setPixelFormat ( INDI_PIXEL_FORMAT  pixelFormat,
uint8_t  pixelDepth = 8 
)

Definition at line 603 of file streammanager.cpp.

◆ setSize()

void StreamManager::setSize ( uint16_t  width,
uint16_t  height = 1 
)

Definition at line 610 of file streammanager.cpp.

◆ setStream()

bool StreamManager::setStream ( bool  enable)

setStream Enables (starts) or disables (stops) streaming.

Parameters
enableTrue to enable, false to disable
Returns
True if operation is successful, false otherwise.

Definition at line 1171 of file streammanager.cpp.

◆ setStreamingExposureEnabled()

void StreamManager::setStreamingExposureEnabled ( bool  enable)

setStreamingExposureEnabled Can stream exposure time be changed?

Parameters
enableTrue if we can control the exact exposure time for each frame in the stream, false otherwise.

Definition at line 1306 of file streammanager.cpp.

◆ updateProperties()

bool StreamManager::updateProperties ( )
virtual

Definition at line 277 of file streammanager.cpp.

Member Data Documentation

◆ d_ptr

std::shared_ptr<StreamManagerPrivate> INDI::StreamManager::d_ptr
protected

Definition at line 155 of file streammanager.h.


The documentation for this class was generated from the following files: