00001 #ifndef PSANA_ORCA_DDL_H 00002 #define PSANA_ORCA_DDL_H 1 00003 00004 // *** Do not edit this file, it is auto-generated *** 00005 00006 #include <vector> 00007 #include <iosfwd> 00008 #include <cstring> 00009 #include "ndarray/ndarray.h" 00010 #include "pdsdata/xtc/TypeId.hh" 00011 namespace Psana { 00012 namespace Orca { 00013 00014 /** @class ConfigV1 00015 00016 00017 */ 00018 00019 00020 class ConfigV1 { 00021 public: 00022 enum { TypeId = Pds::TypeId::Id_OrcaConfig /**< XTC type ID value (from Pds::TypeId class) */ }; 00023 enum { Version = 1 /**< XTC type version number */ }; 00024 enum { Row_Pixels = 2048 }; 00025 enum { Column_Pixels = 2048 }; 00026 enum ReadoutMode { 00027 x1, 00028 x2, 00029 x4, 00030 Subarray, 00031 }; 00032 enum Cooling { 00033 Off, 00034 On, 00035 Max, 00036 }; 00037 virtual ~ConfigV1(); 00038 virtual Orca::ConfigV1::ReadoutMode mode() const = 0; 00039 virtual Orca::ConfigV1::Cooling cooling() const = 0; 00040 virtual uint8_t defect_pixel_correction_enabled() const = 0; 00041 virtual uint32_t rows() const = 0; 00042 }; 00043 std::ostream& operator<<(std::ostream& str, Orca::ConfigV1::ReadoutMode enval); 00044 std::ostream& operator<<(std::ostream& str, Orca::ConfigV1::Cooling enval); 00045 } // namespace Orca 00046 } // namespace Psana 00047 #endif // PSANA_ORCA_DDL_H