My Project
 All Classes Files Functions Variables Enumerations Enumerator Friends Macros Pages
ScanCache Struct Reference

#include <scancache.h>

Public Member Functions

void initialize ()
 
void free ()
 
int empty ()
 
int initialize (unsigned int ibody, unsigned int iend, unsigned int nreps, unsigned int msPerStep, unsigned int msPerSample, bool add)
 
int extend (unsigned int index, unsigned flag, double azoff, double eloff, double dkoff)
 
void getNextOffset (ScanCacheOffset *offset, gcp::util::TimeVal &mjd)
 
void setUpForNewInterpolation (gcp::util::TimeVal &mjd, unsigned index)
 
void setUpForNextIteration (gcp::util::TimeVal &mjd)
 
void clearInterpolationContainers ()
 
void extendInterpolation (gcp::util::TimeVal &mjd)
 
void extend (unsigned index)
 
void fillInterpolationContainers (unsigned startIndex)
 
void computeOffset (ScanCacheOffset *offset, gcp::util::TimeVal &mjd)
 
ScanMode getState (gcp::util::TimeVal &mjd)
 
void updateInterpolators (gcp::util::TimeVal &mjd)
 
bool nextStepEndsScan (gcp::util::TimeVal &mjd)
 
bool nextStepIsBody (gcp::util::TimeVal &mjd)
 
bool nextStepStartsNewIteration (gcp::util::TimeVal &mjd)
 

Public Attributes

ScanCacheEntry offsets [SCAN_CACHE_SIZE]
 
ScanCacheOffset lastOffset
 
unsigned int size
 
unsigned int istart
 
unsigned int ibody
 
unsigned int iend
 
unsigned midIndex
 
unsigned startIndex_
 
unsigned nreps
 
unsigned irep
 
unsigned msPerStep
 
unsigned msPerSample
 
ScanMode currentState
 
gcp::util::TimeValstartMjd_
 
gcp::util::QuadraticInterpolatorazInt_
 
gcp::util::QuadraticInterpolatorelInt_
 
gcp::util::QuadraticInterpolatordkInt_
 
bool start
 
bool add_
 

Friends

std::ostream & operator<< (std::ostream &os, ScanCache &cache)
 

Detailed Description

....................................................................... A struct for managing offsets read in from a scan offset file.

Member Function Documentation

void ScanCache::clearInterpolationContainers ( )

....................................................................... Empty the interpolation containers

void ScanCache::computeOffset ( ScanCacheOffset offset,
gcp::util::TimeVal mjd 
)

....................................................................... Compute the offset for the passed mjd

int ScanCache::empty ( )

....................................................................... Empty a cache.

void ScanCache::extend ( unsigned  index)

....................................................................... Add a new point to the interpolation containers

void ScanCache::extendInterpolation ( gcp::util::TimeVal mjd)

....................................................................... Extend the interpolation containers in preparation for the next evaluation

void ScanCache::fillInterpolationContainers ( unsigned  startIndex)

....................................................................... Fill the interpolation containers, starting from the passed index

void ScanCache::getNextOffset ( ScanCacheOffset offset,
gcp::util::TimeVal mjd 
)

....................................................................... Get the next set of offsets from the cache.

ScanMode ScanCache::getState ( gcp::util::TimeVal mjd)

....................................................................... Do whatever is appropriate to extend the interpolation containers in preparation for the next computation

int ScanCache::initialize ( unsigned int  in_ibody,
unsigned int  in_iend,
unsigned int  in_nreps,
unsigned int  in_msPerStep,
unsigned int  in_msPerSample,
bool  add 
)

....................................................................... Initialize cache object

bool ScanCache::nextStepEndsScan ( gcp::util::TimeVal mjd)

....................................................................... Return true if the next step will end the scan

bool ScanCache::nextStepIsBody ( gcp::util::TimeVal mjd)

....................................................................... Return true if the next step is part of the body segment

bool ScanCache::nextStepStartsNewIteration ( gcp::util::TimeVal mjd)

....................................................................... Return true if the next step is part of the body segment

void ScanCache::setUpForNewInterpolation ( gcp::util::TimeVal mjd,
unsigned  index 
)

....................................................................... Get the scan offsets and rates corresponding to this mjd

void ScanCache::setUpForNextIteration ( gcp::util::TimeVal mjd)

....................................................................... Get the scan offsets and rates corresponding to this mjd

void ScanCache::updateInterpolators ( gcp::util::TimeVal mjd)

....................................................................... Do whatever is appropriate to extend the interpolation containers in preparation for the next computation

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
ScanCache cache 
)
friend

....................................................................... Print method for ScanCache class


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