1 package net.osdn.gokigen.gr2control.camera.olympus.wrapper;
3 import android.util.Log;
5 import net.osdn.gokigen.gr2control.camera.ICameraInformation;
6 import net.osdn.gokigen.gr2control.camera.IFocusingModeNotify;
7 import net.osdn.gokigen.gr2control.camera.olympus.wrapper.property.IOlyCameraProperty;
9 import jp.co.olympus.camerakit.OLYCamera;
10 import jp.co.olympus.camerakit.OLYCameraPropertyListener;
16 public class OLYCameraPropertyListenerImpl implements OLYCameraPropertyListener, ICameraInformation
18 private final String TAG = toString();
19 private final OLYCamera camera;
20 private IFocusingModeNotify focusCallback = null;
26 OLYCameraPropertyListenerImpl(OLYCamera olyCamera)
28 olyCamera.setCameraPropertyListener(this);
29 this.camera = olyCamera;
36 public void setFocusingControl(IFocusingModeNotify focusCallback)
38 this.focusCallback = focusCallback;
46 public void onUpdateCameraProperty(final OLYCamera olyCamera, final String name)
48 Thread thread = new Thread(new Runnable()
55 case IOlyCameraProperty.FOCUS_STILL:
57 Log.v(TAG, "onUpdateCameraProperty() : " + name);
58 if (focusCallback != null)
60 focusCallback.changedFocusingMode();
81 * フォーカス状態を知る(MF or AF)
82 * @return true : MF / false : AF
85 public boolean isManualFocus()
87 boolean isManualFocus = false;
90 String value = camera.getCameraPropertyValue(IOlyCameraProperty.FOCUS_STILL);
91 Log.v(TAG, "OlyCameraPropertyProxy::isManualFocus() " + value);
92 isManualFocus = !(value.contains("AF"));
98 return (isManualFocus);
102 * 電動ズーム機能を持つレンズが装着されているか確認
104 * @return true ; 電動ズーム付き / false : 電動ズームなし
107 public boolean isElectricZoomLens()
109 return ((camera != null)&&(camera.getLensMountStatus()).contains("electriczoom"));
115 * @return true : AE Lock / false : AE Unlock
118 public boolean isExposureLocked()
120 boolean isExposureLocked =false;
123 String value = camera.getCameraPropertyValue(IOlyCameraProperty.AE_LOCK_STATE);
124 Log.v(TAG, "OlyCameraPropertyProxy::isExposureLocked() " + value);
125 isExposureLocked = !(value.contains("UNLOCK"));
131 return (isExposureLocked);