You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Package Ipimb

Defines Namespace Pds::Ipimb

Ipimb = Intensity Position, Intensity Monitoring Boards. Devices used by SXR to measure position and intensity of the X-ray beam. It has four diodes situated around the beamline, and the bias voltage of these diodes measures the intensity of the beam at the location of each diode. By comparing the signal from each diode, the position of the beam can be inferred.

Class ConfigV1

This class defines the Ipimb configuration object. It holds all the configuration information for the Intensity Position Intensity Monitoring Boards.

Public Member Functions:

      ConfigV1 ();
      ~ConfigV1 ();
      ConfigV1 (uint16_t chargeAmpRange,
                uint16_t calibrationRange,
                uint32_t resetLength,
                uint16_t resetDelay,
                float chargeAmpRefVoltage,
                float calibrationVoltage,
                float diodeBias,
                uint16_t calStrobeLength,
                uint32_t trigDelay
                );
      uint64_t triggerCounter() const;
      uint64_t serialID() const;
      uint16_t chargeAmpRange() const;
      uint16_t calibrationRange() const;
      uint32_t resetLength() const;
      uint16_t resetDelay() const;
      float chargeAmpRefVoltage() const;
      float calibrationVoltage() const;
      float diodeBias() const;
      uint16_t status() const;
      uint16_t errors() const;
      uint16_t calStrobeLength() const;
      uint32_t trigDelay() const;

      void setSerialID(uint64_t serialID);
      void setErrors(uint16_t errors);
      void setStatus(uint16_t status);
      void dump() const;

Static Public Member Functions:

      static Pds::TypeId typeId();

Class DataV1

This class defines an Ipimb data object. It holds all event data from the Ipimb. Member functions allow you to get data from each of the four diodes individually.

Public Member Functions:

      enum {Version=1};
      uint64_t triggerCounter() const;
      uint16_t config0() const;
      uint16_t config1() const;
      uint16_t config2() const;
      uint16_t channel0() const;
      uint16_t channel1() const;
      uint16_t channel2() const;
      uint16_t channel3() const;
      float channel0Volts() const;
      float channel1Volts() const;
      float channel2Volts() const;
      float channel3Volts() const;
      uint16_t checksum() const;

Static Public Member Functions:

      static Pds::TypeId typeId();
  • No labels