Readout
Handles an image readout by keeping track of the current elapsed exposure time and the pixel count. Callbacks are used to provide the user application with the status information.
Syntax
void Readout( lRows, lCols, fExpTime, pbAbort, pExposeCall, pReadCall );
Parameters
long lRows
The image row dimension ( pixels ).
long lCols
The image column dimension ( pixels ).
float fExpTime
The exposure time ( in seconds ).
bool *pbAbort
[optional] Pointer to a bool variable that can be used to abort/stop an exposure/readout. Default: NULL
void ( *pExposeCall )( float )
[optional] Function pointer to a callback function that is called each time the elapsed exposure time is read. The function takes a float parameter that is the current elapsed time ( in seconds ). Default: NULL
void ( *pReadCall )( long )
[optional] Function pointer to a callback function that is called each time the current pixel count is read. The function takes a long parameter that is the current pixel count. Default: NULL
Returns
None
Required Headers
CController.h
Namespace
arc
Throws
std::runtime_error
Remarks
Example
        // This code demonstrates how to start and
        // readout a 0.5 second exposure.

        #include <iostream.h>
        #include "CController.h"

        using namespace std;
        using namespace arc;

        void ExposeCallback( float fElapsedTime );
        void ReadoutCallback( long lPixelCount );

        int main()
        {
            CController cController;
            bool bAbort = false;

            // .... open driver, initialize, etc ....

            try {
                cController.Expose( 0.5 );
                cController.Readout( lRows, lCols, 0.5, &pAbort, ExposeCallback, ReadoutCallback );
            }
            catch ( std::exception &e )
            {
                cerr << "Exception Occurred: " << e.what() << endl;
            }

            return 0;
        }

        void ExposeCallback( float fElapsedTime )
        {
            cout << "Elapsed time: " << fElapsedTime << endl;
        }

        void ReadoutCallback( long lPixelCount )
        {
            cout << "Pixel count: " << lPixelCount << endl;
        }

© Astronomical Research Cameras, Inc.