Instrument Neutral Distributed Interface INDI  1.9.0
Namespaces | Classes | Typedefs | Functions
INDI Namespace Reference

Namespace to encapsulate INDI client, drivers, and mediator classes. Developers can subclass the base devices class to implement device specific functionality. This ensures interoperability and consistency among devices within the same family and reduces code overhead. More...

Namespaces

 AlignmentSubsystem
 Namespace to encapsulate the INDI Alignment Subsystem classes. For more information see "INDI Alignment Subsystem" in "Related Pages" accessible via the banner at the top of this page.
 
 SP
 INDI Standard Properties are common properties standarized across drivers and clients alike.
 

Classes

class  BaseClient
 Class to provide basic client functionality. More...
 
class  BaseClientQt
 Class to provide basic client functionality based on Qt5 toolkit and is therefore suitable for cross-platform development. More...
 
class  BaseDevice
 Class to provide basic INDI device functionality. More...
 
class  BaseDevicePrivate
 
class  BaseMediator
 Meditates event notification as generated by driver and passed to clients. More...
 
class  CCD
 Class to provide general functionality of CCD cameras with a single CCD sensor, or a primary CCD sensor in addition to a secondary CCD guide head. More...
 
class  CCDChip
 The CCDChip class provides functionality of a CCD Chip within a CCD. More...
 
class  Controller
 The Controller class provides functionality to access a controller (e.g. joystick) input and send it to the requesting driver. More...
 
class  Correlator
 Class to provide general functionality of Monodimensional Correlator. More...
 
class  DefaultDevice
 Class to provide extended functionality for devices in addition to the functionality provided by INDI::BaseDevice. This class should only be subclassed by drivers directly as it is linked with main(). Virtual drivers cannot employ INDI::DefaultDevice. More...
 
class  DefaultDevicePrivate
 
class  Detector
 Class to provide general functionality of Monodimensional Detector. More...
 
class  Dome
 Class to provide general functionality of a Dome device. More...
 
class  DustCapInterface
 
class  ElapsedTimer
 The ElapsedTimer class provides a fast way to calculate elapsed times. More...
 
class  ElapsedTimerPrivate
 
class  EncoderInterface
 The EncoderInterface class is the base class for video streaming encoders. More...
 
class  EncoderManager
 The EncoderManager class contains a list of active supported encoders. More...
 
class  FilterInterface
 
class  FilterWheel
 
class  Focuser
 
class  FocuserInterface
 Provides interface to implement focuser functionality. More...
 
class  FPSMeter
 
class  GPS
 
class  GuiderInterface
 
class  LightBoxInterface
 
class  Logger
 The Logger class is a simple logger to log messages to file and INDI clients. This is the implementation of a simple logger in C++. It is implemented as a Singleton, so it can be easily called through two DEBUG macros. It is Pthread-safe. It allows to log on both file and screen, and to specify a verbosity threshold for both of them. More...
 
class  MJPEGEncoder
 The MJPEGEncoder class encodes frames in JPEG format before transmitting them to the client. More...
 
class  Property
 Provides generic container for INDI properties. More...
 
class  PropertyBasic
 
class  PropertyBasicPrivateTemplate
 
class  PropertyBlob
 
class  PropertyBlobPrivate
 
class  PropertyLight
 
class  PropertyLightPrivate
 
class  PropertyNumber
 
class  PropertyNumberPrivate
 
class  PropertyPrivate
 
class  PropertySwitch
 
class  PropertySwitchPrivate
 
class  PropertyText
 
class  PropertyTextPrivate
 
class  PropertyView
 Provides decorator for Low-Level IXXXVectorProperty/IXXX. More...
 
struct  pulse_t
 
class  RawEncoder
 The RawEncoder class sends the image as-is (lossless) to the client. More...
 
class  RecorderInterface
 The RecorderInterface class is the base class for recorders. More...
 
class  RecorderManager
 The RecorderManager class contains a list of active supported recorders. More...
 
class  Rotator
 
class  RotatorInterface
 
class  SensorInterface
 The SensorDevice class provides functionality of a Sensor Device within a Sensor. More...
 
class  SER_Recorder
 The SER_Recorder class implements recording of video streams in SER format. More...
 
class  SingleThreadPool
 
class  SingleThreadPoolPrivate
 
class  Spectrograph
 Class to provide general functionality of Monodimensional Spectrograph. More...
 
class  StreamManager
 
class  StreamManagerPrivate
 
class  Telescope
 
class  TheoraRecorder
 The TheoraRecorder class implemented recording of video streaming data in a libtheora OGV file. More...
 
class  Timer
 The Timer class provides repetitive and single-shot timers. More...
 
class  TimerPrivate
 
class  USBDevice
 
class  V4L2_Base
 
class  Weather
 
class  WeatherInterface
 Provides interface to implement weather reporting functionality. More...
 
struct  WidgetTraits
 
struct  WidgetTraits< IBLOB >
 
struct  WidgetTraits< ILight >
 
struct  WidgetTraits< INumber >
 
struct  WidgetTraits< ISwitch >
 
struct  WidgetTraits< IText >
 
struct  WidgetView
 
struct  WidgetView< IBLOB >
 
struct  WidgetView< ILight >
 
struct  WidgetView< INumber >
 
struct  WidgetView< ISwitch >
 
struct  WidgetView< IText >
 

Typedefs

using WidgetText = INDI::WidgetView< IText >
 
using WidgetNumber = INDI::WidgetView< INumber >
 
using WidgetSwitch = INDI::WidgetView< ISwitch >
 
using WidgetLight = INDI::WidgetView< ILight >
 
using WidgetBlob = INDI::WidgetView< IBLOB >
 

Functions

std::string regex_replace_compat (const std::string &input, const std::string &pattern, const std::string &replace)
 
Logger::loggerConf operator| (Logger::loggerConf __a, Logger::loggerConf __b)
 
Logger::loggerConf operator& (Logger::loggerConf __a, Logger::loggerConf __b)
 
std::string regex_replace_compat2 (const std::string &input, const std::string &pattern, const std::string &replace)
 
int mkpath (std::string path, mode_t mode)
 Create a path directory - this function uses 'mkdir'. More...
 
std::string format_time (const std::tm &tm, const char *format)
 Converts the date and time to string - this function uses 'strftime'. More...
 
void replace_all (std::string &subject, const std::string &search, const std::string &replace)
 Replaces every occurrence of the string 'search' with the string 'replace'. More...
 

Detailed Description

Namespace to encapsulate INDI client, drivers, and mediator classes. Developers can subclass the base devices class to implement device specific functionality. This ensures interoperability and consistency among devices within the same family and reduces code overhead.

Author
Jasem Mutlaq
Gerry Rozema

Typedef Documentation

◆ WidgetBlob

Definition at line 31 of file indipropertybasic.h.

◆ WidgetLight

Definition at line 30 of file indipropertybasic.h.

◆ WidgetNumber

Definition at line 28 of file indipropertybasic.h.

◆ WidgetSwitch

Definition at line 29 of file indipropertybasic.h.

◆ WidgetText

Definition at line 27 of file indipropertybasic.h.

Function Documentation

◆ format_time()

std::string INDI::format_time ( const std::tm &  tm,
const char *  format 
)

Converts the date and time to string - this function uses 'strftime'.

Definition at line 64 of file indiutility.cpp.

◆ mkpath()

int INDI::mkpath ( std::string  path,
mode_t  mode 
)

Create a path directory - this function uses 'mkdir'.

Note
Not available on Windows. Need to use C++17 cross-platform std::filesystem later.

Definition at line 29 of file indiutility.cpp.

◆ operator&()

Logger::loggerConf INDI::operator& ( Logger::loggerConf  __a,
Logger::loggerConf  __b 
)
inline

Definition at line 285 of file indilogger.h.

◆ operator|()

Logger::loggerConf INDI::operator| ( Logger::loggerConf  __a,
Logger::loggerConf  __b 
)
inline

Definition at line 280 of file indilogger.h.

◆ regex_replace_compat()

std::string INDI::regex_replace_compat ( const std::string &  input,
const std::string &  pattern,
const std::string &  replace 
)

Definition at line 3052 of file indiccd.cpp.

◆ regex_replace_compat2()

std::string INDI::regex_replace_compat2 ( const std::string &  input,
const std::string &  pattern,
const std::string &  replace 
)

Definition at line 1181 of file indisensorinterface.cpp.

◆ replace_all()

void INDI::replace_all ( std::string &  subject,
const std::string &  search,
const std::string &  replace 
)

Replaces every occurrence of the string 'search' with the string 'replace'.

Definition at line 73 of file indiutility.cpp.