/****************************************************************************/
/* Copyright (c) 2008 MBARI                                                 */
/* MBARI Proprietary Information. All rights reserved.                      */
/****************************************************************************/
/* Summary  :                                                               */
/* Filename : CameraOutput.h                                                */
/* Author   : rsm                                                           */
/* Project  :                                                               */
/* Version  : 1.0                                                           */
/* Created  : 05/01/2008                                                    */
/* Modified :                                                               */
/* Archived :                                                               */
/****************************************************************************/
/* Modification History:                                                    */
/****************************************************************************/
/*-----------------------------------------------------------------------*
  CLASS: CameraOutput

  DESCRIPTION: Shared mem for camera server and driver.

  $Id: CameraOutput.h,v 1.2 2008/07/15 19:23:16 headley Exp $
 *-----------------------------------------------------------------------*/
/**\file CameraOutput.h */
#ifndef _CAMERAOUTPUT_H
#define _CAMERAOUTPUT_H

#include <time.h>
#include "SharedData.h"
#include "DeviceIF.h"
#include "CameraIF.h"

/** Camera output name */
#define CameraOutputName "CameraOutput"

/** Max number of cameras(?) */
#define NCAMERAS 10

/** Shared camera data.
 */
class CameraOutput: public SharedData {

public:

#if 0
  //
  struct Data 
  {
    short FireCamera;
    long nPhotos;
    long nSamplePeriods;
    double distance;
    CameraIF::CameraState cameraState;
  };
  Data data;
#endif
  /** Camera shared data instance */
  CameraIF::Data data;

  CameraOutput( Access access = NoAccess,
		  Boolean init = False );

  ~CameraOutput();


  void read();
  void write();
};

#endif
