TwiceAsNice  2019-02-18
Public Member Functions | Private Member Functions | Private Attributes | List of all members
NsDownload Class Reference

#include <nsdownload.h>

Collaboration diagram for NsDownload:
Collaboration graph

Public Member Functions

 NsDownload ()
 
 NsDownload (NsChannel *chn)
 
void setFrameYBinning (int binning)
 
void setFrameXBinning (int binning)
 
void setSetTemp (float temp)
 
void setActTemp (float temp)
 
void setImgSize (int siz)
 
void setIncrement (int inc)
 
void setFbase (const char *name)
 
void nextImage (void)
 
void setNumExp (int n)
 
int getImgSeq (void)
 
void setExpDur (float exp)
 
void doDownload ()
 
void startThread ()
 
void stopThread ()
 
bool inDownload ()
 
int getActWriteLines ()
 
void trun ()
 
void initdownload ()
 
int downloader ()
 
int purgedownload ()
 
unsigned char * getBuf ()
 
size_t getBufImageSize ()
 
void setImgWrite (bool w)
 
void freeBuf ()
 
void setInterrupted ()
 
void copydownload (unsigned char *buf, int xstart, int xlen, int xbin, int pad, int cooked)
 
void writedownload (int pad, int cooked)
 
void setZeroReads (int zeroes)
 

Private Member Functions

void fitsheader (int x, int y, char *fbase, struct img_params *ip)
 
int fulldownload ()
 
bool getDoDownload ()
 

Private Attributes

struct download_params dp
 
struct img_params ip
 
ns_readdata_t rdd
 
struct download_paramsctx
 
ns_readdata_trd
 
FILE * img
 
volatile int readdone
 
volatile int do_download
 
volatile int in_download
 
volatile int interrupted
 
NsChannelcn
 
int write_it
 
int lastread
 
std::thread * downthread
 
std::condition_variable go_download
 
std::mutex mutx
 
ns_readdata_t rb
 
ns_readdata_tretrBuf
 
int zero_reads { 1 }
 
int writelines {0}
 

Constructor & Destructor Documentation

◆ NsDownload() [1/2]

NsDownload::NsDownload ( )
inline

◆ NsDownload() [2/2]

NsDownload::NsDownload ( NsChannel chn)
inline

Member Function Documentation

◆ copydownload()

void NsDownload::copydownload ( unsigned char *  buf,
int  xstart,
int  xlen,
int  xbin,
int  pad,
int  cooked 
)

◆ doDownload()

void NsDownload::doDownload ( )

◆ downloader()

int NsDownload::downloader ( )

◆ fitsheader()

void NsDownload::fitsheader ( int  x,
int  y,
char *  fbase,
struct img_params ip 
)
private

◆ freeBuf()

void NsDownload::freeBuf ( )

◆ fulldownload()

int NsDownload::fulldownload ( )
private

◆ getActWriteLines()

int NsDownload::getActWriteLines ( )

◆ getBuf()

unsigned char * NsDownload::getBuf ( )

◆ getBufImageSize()

size_t NsDownload::getBufImageSize ( )

◆ getDoDownload()

bool NsDownload::getDoDownload ( )
private

◆ getImgSeq()

int NsDownload::getImgSeq ( void  )

◆ inDownload()

bool NsDownload::inDownload ( )

◆ initdownload()

void NsDownload::initdownload ( )

◆ nextImage()

void NsDownload::nextImage ( void  )

◆ purgedownload()

int NsDownload::purgedownload ( )

◆ setActTemp()

void NsDownload::setActTemp ( float  temp)

◆ setExpDur()

void NsDownload::setExpDur ( float  exp)

◆ setFbase()

void NsDownload::setFbase ( const char *  name)

◆ setFrameXBinning()

void NsDownload::setFrameXBinning ( int  binning)

◆ setFrameYBinning()

void NsDownload::setFrameYBinning ( int  binning)

◆ setImgSize()

void NsDownload::setImgSize ( int  siz)

◆ setImgWrite()

void NsDownload::setImgWrite ( bool  w)

◆ setIncrement()

void NsDownload::setIncrement ( int  inc)

◆ setInterrupted()

void NsDownload::setInterrupted ( )

◆ setNumExp()

void NsDownload::setNumExp ( int  n)

◆ setSetTemp()

void NsDownload::setSetTemp ( float  temp)

◆ setZeroReads()

void NsDownload::setZeroReads ( int  zeroes)

◆ startThread()

void NsDownload::startThread ( void  )

◆ stopThread()

void NsDownload::stopThread ( void  )

◆ trun()

void NsDownload::trun ( )

◆ writedownload()

void NsDownload::writedownload ( int  pad,
int  cooked 
)

Member Data Documentation

◆ cn

NsChannel* NsDownload::cn
private

◆ ctx

struct download_params* NsDownload::ctx
private

◆ do_download

volatile int NsDownload::do_download
private

◆ downthread

std::thread* NsDownload::downthread
private

◆ dp

struct download_params NsDownload::dp
private

◆ go_download

std::condition_variable NsDownload::go_download
private

◆ img

FILE* NsDownload::img
private

◆ in_download

volatile int NsDownload::in_download
private

◆ interrupted

volatile int NsDownload::interrupted
private

◆ ip

struct img_params NsDownload::ip
private

◆ lastread

int NsDownload::lastread
private

◆ mutx

std::mutex NsDownload::mutx
private

◆ rb

ns_readdata_t NsDownload::rb
private

◆ rd

ns_readdata_t* NsDownload::rd
private

◆ rdd

ns_readdata_t NsDownload::rdd
private

◆ readdone

volatile int NsDownload::readdone
private

◆ retrBuf

ns_readdata_t* NsDownload::retrBuf
private

◆ write_it

int NsDownload::write_it
private

◆ writelines

int NsDownload::writelines {0}
private

◆ zero_reads

int NsDownload::zero_reads { 1 }
private

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