2014 snapchat source code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.3 KiB

  1. //
  2. // SCFeatureTapToFocusAndExposureImpl.h
  3. // SCCamera
  4. //
  5. // Created by Michel Loenngren on 4/5/18.
  6. //
  7. #import "SCFeatureTapToFocusAndExposure.h"
  8. #import <SCBase/SCMacros.h>
  9. #import <Foundation/Foundation.h>
  10. @protocol SCCapturer;
  11. /**
  12. Protocol describing unique camera commands to run when the user taps on screen. These could be focus, exposure or tap
  13. to portrait mode.
  14. */
  15. @protocol SCFeatureCameraTapCommand <NSObject>
  16. - (void)execute:(CGPoint)pointOfInterest capturer:(id<SCCapturer>)capturer;
  17. @end
  18. /**
  19. This is the default implementation of SCFeatureTapToFocusAndExposure allowing the user to tap on the camera overlay
  20. view in order to adjust focus and exposure.
  21. */
  22. @interface SCFeatureTapToFocusAndExposureImpl : NSObject <SCFeatureTapToFocusAndExposure>
  23. SC_INIT_AND_NEW_UNAVAILABLE
  24. - (instancetype)initWithCapturer:(id<SCCapturer>)capturer commands:(NSArray<id<SCFeatureCameraTapCommand>> *)commands;
  25. @end
  26. /**
  27. Adjust focus on tap.
  28. */
  29. @interface SCFeatureCameraFocusTapCommand : NSObject <SCFeatureCameraTapCommand>
  30. @end
  31. /**
  32. Adjust exposure on tap.
  33. */
  34. @interface SCFeatureCameraExposureTapCommand : NSObject <SCFeatureCameraTapCommand>
  35. @end
  36. /**
  37. Adjust portrait mode point of interest on tap.
  38. */
  39. @interface SCFeatureCameraPortraitTapCommand : NSObject <SCFeatureCameraTapCommand>
  40. @end