• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

kstars

libfli.h

Go to the documentation of this file.
00001 /*
00002 
00003   Copyright (c) 2002 Finger Lakes Instrumentation (FLI), L.L.C.
00004   All rights reserved.
00005 
00006   Redistribution and use in source and binary forms, with or without
00007   modification, are permitted provided that the following conditions
00008   are met:
00009 
00010         Redistributions of source code must retain the above copyright
00011         notice, this list of conditions and the following disclaimer.
00012 
00013         Redistributions in binary form must reproduce the above
00014         copyright notice, this list of conditions and the following
00015         disclaimer in the documentation and/or other materials
00016         provided with the distribution.
00017 
00018         Neither the name of Finger Lakes Instrumentation (FLI), LLC
00019         nor the names of its contributors may be used to endorse or
00020         promote products derived from this software without specific
00021         prior written permission.
00022 
00023   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
00024   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
00025   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
00026   FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
00027   REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
00028   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
00029   BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
00030   LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00031   CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
00032   LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
00033   ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00034   POSSIBILITY OF SUCH DAMAGE.
00035 
00036   ======================================================================
00037 
00038   Finger Lakes Instrumentation, L.L.C. (FLI)
00039   web: http://www.fli-cam.com
00040   email: support@fli-cam.com
00041 
00042 */
00043 
00044 #ifndef _LIBFLI_H_
00045 #define _LIBFLI_H_
00046 
00047 #include <sys/types.h>
00048 
00053 typedef long flidev_t;
00054 
00066 typedef long flidomain_t;
00067 
00068 #define FLIDOMAIN_NONE (0x00)
00069 #define FLIDOMAIN_PARALLEL_PORT (0x01)
00070 #define FLIDOMAIN_USB (0x02)
00071 #define FLIDOMAIN_SERIAL (0x03)
00072 #define FLIDOMAIN_INET (0x04)
00073 
00074 #define FLIDEVICE_NONE (0x000)
00075 #define FLIDEVICE_CAMERA (0x100)
00076 #define FLIDEVICE_FILTERWHEEL (0x200)
00077 #define FLIDEVICE_FOCUSER (0x300)
00078 
00085 typedef long fliframe_t;
00086 
00087 #define FLI_FRAME_TYPE_NORMAL (0)
00088 #define FLI_FRAME_TYPE_DARK (1)
00089 
00096 typedef long flibitdepth_t;
00097 
00098 #define FLI_MODE_8BIT (0)
00099 #define FLI_MODE_16BIT (1)
00100 
00111 typedef long flishutter_t;
00112 
00113 #define FLI_SHUTTER_CLOSE (0x0000)
00114 #define FLI_SHUTTER_OPEN (0x0001)
00115 #define FLI_SHUTTER_EXTERNAL_TRIGGER (0x0002)
00116 #define FLI_SHUTTER_EXTERNAL_TRIGGER_LOW (0x0002)
00117 #define FLI_SHUTTER_EXTERNAL_TRIGGER_HIGH (0x0004)
00118 
00126 typedef long flibgflush_t;
00127 
00128 #define FLI_BGFLUSH_STOP (0x0000)
00129 #define FLI_BGFLUSH_START (0x0001)
00130 
00138 typedef long flidebug_t;
00139 
00140 #define FLIDEBUG_NONE (0x00)
00141 #define FLIDEBUG_INFO (0x01)
00142 #define FLIDEBUG_WARN (0x02)
00143 #define FLIDEBUG_FAIL (0x04)
00144 #define FLIDEBUG_ALL (FLIDEBUG_INFO | FLIDEBUG_WARN | FLIDEBUG_FAIL)
00145 
00146 #ifdef WIN32
00147 #ifndef LIBFLIAPI
00148 #define LIBFLIAPI __declspec(dllimport) long __stdcall
00149 #endif
00150 #else
00151 #define LIBFLIAPI long
00152 #endif
00153 
00154 /* Library API Function prototypes */
00155 
00156 #ifdef __cplusplus
00157 extern "C" {  // only need to export C interface if used by C++ source code
00158 #endif
00159 
00160 LIBFLIAPI FLIOpen(flidev_t *dev, char *name, flidomain_t domain);
00161 LIBFLIAPI FLISetDebugLevel(char *host, flidebug_t level);
00162 LIBFLIAPI FLIClose(flidev_t dev);
00163 LIBFLIAPI FLIGetLibVersion(char* ver, size_t len);
00164 LIBFLIAPI FLIGetModel(flidev_t dev, char* model, size_t len);
00165 LIBFLIAPI FLIGetPixelSize(flidev_t dev, double *pixel_x, double *pixel_y);
00166 LIBFLIAPI FLIGetHWRevision(flidev_t dev, long *hwrev);
00167 LIBFLIAPI FLIGetFWRevision(flidev_t dev, long *fwrev);
00168 LIBFLIAPI FLIGetArrayArea(flidev_t dev, long* ul_x, long* ul_y,
00169               long* lr_x, long* lr_y);
00170 LIBFLIAPI FLIGetVisibleArea(flidev_t dev, long* ul_x, long* ul_y,
00171                 long* lr_x, long* lr_y);
00172 LIBFLIAPI FLISetExposureTime(flidev_t dev, long exptime);
00173 LIBFLIAPI FLISetImageArea(flidev_t dev, long ul_x, long ul_y,
00174               long lr_x, long lr_y);
00175 LIBFLIAPI FLISetHBin(flidev_t dev, long hbin);
00176 LIBFLIAPI FLISetVBin(flidev_t dev, long vbin);
00177 LIBFLIAPI FLISetFrameType(flidev_t dev, fliframe_t frametype);
00178 LIBFLIAPI FLICancelExposure(flidev_t dev);
00179 LIBFLIAPI FLIGetExposureStatus(flidev_t dev, long *timeleft);
00180 LIBFLIAPI FLISetTemperature(flidev_t dev, double temperature);
00181 LIBFLIAPI FLIGetTemperature(flidev_t dev, double *temperature);
00182 LIBFLIAPI FLIGrabRow(flidev_t dev, void *buff, size_t width);
00183 LIBFLIAPI FLIExposeFrame(flidev_t dev);
00184 LIBFLIAPI FLIFlushRow(flidev_t dev, long rows, long repeat);
00185 LIBFLIAPI FLISetNFlushes(flidev_t dev, long nflushes);
00186 LIBFLIAPI FLISetBitDepth(flidev_t dev, flibitdepth_t bitdepth);
00187 LIBFLIAPI FLIReadIOPort(flidev_t dev, long *ioportset);
00188 LIBFLIAPI FLIWriteIOPort(flidev_t dev, long ioportset);
00189 LIBFLIAPI FLIConfigureIOPort(flidev_t dev, long ioportset);
00190 LIBFLIAPI FLILockDevice(flidev_t dev);
00191 LIBFLIAPI FLIUnlockDevice(flidev_t dev);
00192 LIBFLIAPI FLIControlShutter(flidev_t dev, flishutter_t shutter);
00193 LIBFLIAPI FLIControlBackgroundFlush(flidev_t dev, flibgflush_t bgflush);
00194 LIBFLIAPI FLIList(flidomain_t domain, char ***names);
00195 LIBFLIAPI FLIFreeList(char **names);
00196 LIBFLIAPI FLISetFilterPos(flidev_t dev, long filter);
00197 LIBFLIAPI FLIGetFilterPos(flidev_t dev, long *filter);
00198 LIBFLIAPI FLIGetFilterCount(flidev_t dev, long *filter);
00199 LIBFLIAPI FLIStepMotor(flidev_t dev, long steps);
00200 LIBFLIAPI FLIGetStepperPosition(flidev_t dev, long *position);
00201 LIBFLIAPI FLIHomeFocuser(flidev_t dev);
00202 LIBFLIAPI FLICreateList(flidomain_t domain);
00203 LIBFLIAPI FLIDeleteList(void);
00204 LIBFLIAPI FLIListFirst(flidomain_t *domain, char *filename,
00205                size_t fnlen, char *name, size_t namelen);
00206 LIBFLIAPI FLIListNext(flidomain_t *domain, char *filename,
00207               size_t fnlen, char *name, size_t namelen);
00208 
00209 
00210 #ifdef __cplusplus
00211 }
00212 #endif
00213 
00214 #endif /* _LIBFLI_H_ */

kstars

Skip menu "kstars"
  • Main Page
  • Modules
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • keduca
  • kstars
Generated for API Reference by doxygen 1.5.9
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal