    001/*-
    002 *******************************************************************************
    003 * Copyright (c) 2011, 2016 Diamond Light Source Ltd.
    004 * All rights reserved. This program and the accompanying materials
    005 * are made available under the terms of the Eclipse Public License v1.0
    006 * which accompanies this distribution, and is available at
    007 * http://www.eclipse.org/legal/epl-v10.html
    008 *
    009 * Contributors:
    010 *    Peter Chang - initial API and implementation and/or initial documentation
    011 *******************************************************************************/
    012
    013package org.eclipse.january.metadata;
    014
    015import org.eclipse.january.metadata.MetadataType;
    016
    017/**
    018 * This metadata describes Peem-related information
    019 */
    020public interface PeemMetadata extends MetadataType {
    021
    022        /**
    023         * Initialize PEEM metadata
    024         * @param xyPosition
    025         * @param scaling
    026         * @param fieldOfView
    027         */
    028        public void initialize(double[] xyPosition, double scaling, double fieldOfView);
    029
    030        /**
    031         *
    032         * @return X/y motor position in microns
    033         */
    034        public double[] getXYMotorPosition();
    035
    036        /**
    037         *
    038         * @return scaling value micron/pixel
    039         */
    040        public double getScaling();
    041
    042        /**
    043         *
    044         * @return field of view value in microns
    045         */
    046        public double getFieldOfView();
    047//
    048//      /**
    049//       * Image rotation (motor x-axis angle with respect to camera x-axis)
    050//       * @return angular rotation in degrees
    051//       */
    052//      public double getRotation();
    053
    054        /**
    055         * Sets X/y motor position in microns
    056         * @param xyMotorPosition
    057         */
    058        void setXYMotorPosition(double[] xyMotorPosition);
    059
    060        /**
    061         * Sets scaling micron/pixel
    062         * @param scaling
    063         */
    064        void setScaling(double scaling);
    065
    066        /**
    067         * Sets fieldOfView value in microns
    068         * @param fieldOfView
    069         */
    070        void setFieldOfView(double fieldOfView);
    071
    072//      /**
    073//       * Sets rotation angular value in degree
    074//       * Image rotation (motor x-axis angle with respect to camera x-axis)
    075//       * @param rotation
    076//       */
    077//      void setRotation(double rotation);
    078}