@class NSLock, NSString, PVMotionEffectHitAreaComponent, NSURL, PVMotionEffectTextComponent, PVMotionEffectTranscriptionComponent, NSMutableDictionary, PVMotionEffectTransformComponent, PVMotionEffectTimelineComponent, NSMutableArray, NSNumber, NSMutableSet; @interface PVMotionEffect : PVEffect { void *_documentInfo; NSMutableArray *_motionComponents; double _effectOutputAspect; double _playableAspectRatio; int _playableContentMode; BOOL _hasPlayableAspectOverride; NSURL *_projectURL; NSString *_projectPath; NSString *_projectPathOverride; unsigned int _groupIDToCache; unsigned int _previousGroupIDToCache; BOOL _cachedRenderDirty; NSNumber *_supportsExtendedRangeInputs; NSNumber *_stillImageInverseToneMapOperator; NSMutableSet *_parameterKeysThatInvalidateCache; NSMutableDictionary *_parametersThatInvalidateCache; NSMutableDictionary *_cachedPublishedParams; NSLock *_documentLock; struct atomic { struct __cxx_atomic_impl> { _Atomic int __a_value; } __a_; } _docLoadStatus; BOOL _lastRenderWasHDR; PVMotionEffectTransformComponent *_transformComponent; PVMotionEffectTextComponent *_textComponent; PVMotionEffectTranscriptionComponent *_transcriptionComponent; PVMotionEffectHitAreaComponent *_hitAreaComponent; PVMotionEffectTimelineComponent *_timelineComponent; } @property (readonly, weak, nonatomic) PVMotionEffectTransformComponent *transformComponent; @property (readonly, weak, nonatomic) PVMotionEffectTextComponent *textComponent; @property (readonly, weak, nonatomic) PVMotionEffectTranscriptionComponent *transcriptionComponent; @property (readonly, weak, nonatomic) PVMotionEffectHitAreaComponent *hitAreaComponent; @property (readonly, weak, nonatomic) PVMotionEffectTimelineComponent *timelineComponent; + (id)_bundleLibPaths; + (void)registerEffects; + (id)_effectPathFromID:(id)a0; + (id)_userLibPaths; + (void)clearPreviewStats; + (id)effectMap; + (void)extractMetadataFromContentsOfFile:(id)a0 toCacheEntry:(id)a1; + (void)handleApplicationDidReceiveMemoryWarning; + (void)handleApplicationWillTerminate; + (void)handleCleanupEffectsCache; + (void)initializeMotion; + (void)initializeMotionInternal; + (void)mapTemplatesInDirectory:(id)a0 doingRescan:(BOOL)a1 origCache:(id)a2 newCache:(id)a3; + (id)motionComponentClasses; + (id)motionEffectPropertyKeyToPublishedParameterNameMap; + (id)newEffectWithData:(id)a0; + (id)newEffectWithURL:(id)a0; + (id)publishedParameterNameToMotionEffectPropertyKeyMap; + (void)registerNoneEffectForType:(id)a0 effectID:(id)a1 origCache:(id)a2 newCache:(id)a3; + (void)registerTemplateInDirectory:(id)a0 relPath:(id)a1 effectID:(id)a2 doingRescan:(BOOL)a3 origCache:(id)a4 newCache:(id)a5; + (BOOL)replacedMappedEffectWithNewPath:(id)a0; + (void)scanTemplatesInDirectory:(id)a0 doingRescan:(BOOL)a1 replaceMappedEffectPath:(BOOL)a2 origCache:(id)a3 newCache:(id)a4; - (void)releaseResources; - (void)setTransform:(id)a0; - (BOOL)isReady; - (void)dealloc; - (void).cxx_destruct; - (int)origin; - (struct CGSize { double x0; double x1; })outputSize; - (int)orientation; - (id)effectParameters; - (void)setEffectParameters:(id)a0; - (struct CGSize { double x0; double x1; })documentSize; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })outputROI; - (void)setRollRadians:(double)a0; - (id)debugDisplayName; - (struct { long long x0; int x1; unsigned int x2; long long x3; })timelineDuration; - (void)adjustPosition:(id)a0; - (id)cameraTransform; - (BOOL)isTranscription; - (id)timelineMarkers; - (double)topLevelOpacity; - (BOOL)isRenderCachingDisabled_NoLock:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (void)_commonInitWithProjectPathOverride:(id)a0; - (void)_configureComponents; - (void)_documentDidUnload_NoLock; - (void)adjustCamera:(id)a0; - (void)adjustCutawayBorder:(id)a0; - (void)adjustCutawayFadeAnimation:(id)a0; - (void)adjustCutawayInputs:(void *)a0 splitCropRectA:(id)a1 splitCropRectB:(id)a2 pipRect:(id)a3 pipScaleFactor:(id)a4 renderScale:(float)a5 pipNeedsCrop:(BOOL)a6 isHDRRender:(BOOL)a7 workingColorSpace:(struct CGColorSpace { } *)a8; - (void)adjustKenBurnsAnimation:(id)a0; - (void)adjustTransitionInputs:(void *)a0 renderScale:(float)a1 renderer:(const void *)a2 inputANeedsBackground:(BOOL)a3 inputBNeedsBackground:(BOOL)a4 slideCropRectA:(id)a5 slideCropRectB:(id)a6; - (void)applyARData:(id)a0 time:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1; - (void)applyInspectableProperties; - (void)applyInspectableProperties_NoLock; - (void)assertDocumentIsLocked; - (void)assertDocumentIsUnlocked; - (void)assertDocumentStatusIsError; - (void)assertDocumentStatusIsInProgress; - (void)assertDocumentStatusIsLoaded; - (void)assertDocumentStatusIsLoadedOrReady; - (void)assertDocumentStatusIsNotStarted; - (void)assertDocumentStatusIsReady; - (void)assertDocumentStatusIsReadyAfterLoad:(BOOL)a0; - (void)beginEditingTextAtIndex:(unsigned int)a0; - (void)beginTextEditing; - (BOOL)bounds:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } *)a0 atTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1 forcePosterFrame:(BOOL)a2 includeDropShadow:(BOOL)a3 includeMasks:(BOOL)a4; - (void)buildDropZoneIdMap_NoLock; - (id)cameraProjection; - (void)clearTranscription; - (struct { long long x0; int x1; unsigned int x2; long long x3; })componentTimeFromTimelineTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })componentTimeRangeFromTimelineTimeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0; - (struct PVCGPointQuad { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; struct CGPoint { double x0; double x1; } x2; struct CGPoint { double x0; double x1; } x3; })cornersAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 forcePosterFrame:(BOOL)a1 includeDropShadow:(BOOL)a2 scale:(struct CGPoint { double x0; double x1; })a3 viewSize:(struct CGSize { double x0; double x1; })a4 viewOrigin:(int)a5; - (id)defaultAttributedString:(unsigned long long)a0; - (void)deleteTemporalInspectableProperties; - (BOOL)didCacheInvalidatingParameterChange_NoLock:(id)a0 key:(id)a1; - (BOOL)didSetCacheInvalidatingParameter_NoLock:(id)a0 forKey:(id)a1; - (void)disableBackgroundMovie:(BOOL)a0; - (void)disableCameraOverride; - (void)disableElementWithPublishedParam:(struct PCString { struct __CFString *x0; } *)a0 disable:(BOOL)a1; - (void)enableCameraOverride:(id)a0 projection:(id)a1; - (void)endEditingTextAtIndex:(unsigned int)a0; - (void)endTextEditing; - (BOOL)forceDisableBuildAnimation; - (BOOL)forceDisableLoop; - (int)getOSFAOption:(id)a0; - (BOOL)hasAllNecessaryResources; - (BOOL)hasBuiltInEnvironment; - (BOOL)hasPlayableAspectOverride_NoLock; - (struct HGRef { struct HGNode *x0; })hgNodeForTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 inputs:(const void *)a1 renderer:(const void *)a2 igContext:(struct HGRef { struct PVInstructionGraphContext *x0; })a3; - (id)hitAreaPointsAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 forcePosterFrame:(BOOL)a1 includeDropShadow:(BOOL)a2 scale:(struct CGPoint { double x0; double x1; })a3 viewSize:(struct CGSize { double x0; double x1; })a4 viewOrigin:(int)a5; - (id)initWithContentID:(id)a0 andDictionary:(id)a1; - (id)initWithEffectID:(id)a0; - (BOOL)isCameraOverrideEnabled; - (BOOL)isLandscape:(id)a0; - (BOOL)isSketch; - (BOOL)isTextFlipped; - (BOOL)isTimeDurationIndefinite; - (BOOL)isTitleCard; - (BOOL)isVisibleAtTime_NoLock:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 timedProperties:(id)a1 defaultProperties:(id)a2; - (void)loadDocument_NoLock; - (void)loadEffectInternal_NoLock; - (BOOL)loadResources; - (BOOL)loadResources_NoLock; - (struct { long long x0; int x1; unsigned int x2; long long x3; })loopTimeOverride; - (BOOL)loopTimeOverrideEnabled; - (struct HGRect { int x0; int x1; int x2; int x3; })makeCropRectForDOD:(struct HGRect { int x0; int x1; int x2; int x3; })a0 renderRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 renderScale:(float)a2; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })outputROI_NoLock:(const void *)a0 scale:(double)a1; - (BOOL)parameterInvalidatesCache_NoLock:(id)a0; - (double)playableAspectRatio_NoLock; - (int)playableContentMode_NoLock; - (id)posterFrameMarker; - (struct HGRef { struct HGNode *x0; })previewHGNodeForTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 inputHGNode:(struct HGRef { struct HGNode *x0; })a1 outputSize:(struct CGSize { double x0; double x1; })a2 renderer:(void *)a3; - (id)projectPath; - (id)projectURL; - (id)publishedParam_NoLock:(const void *)a0 forKey:(id)a1 atTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a2 includeHidden:(BOOL)a3; - (id)publishedParams_NoLock:(const void *)a0; - (void)resetToDefaultTranscriptionForLocaleID:(id)a0; - (BOOL)resourcesAreReady; - (void)runEnsuringDocumentReadyAndLockingDocument:(id /* block */)a0; - (void)runEnsuringDocumentReady_NoLock:(id /* block */)a0; - (void)runWithDocument_NoLock:(id /* block */)a0; - (void)setEffectOutputAspectWithProperties_NoLock:(id)a0 allProperties:(id)a1; - (void)setEffectOutputAspect_NoLock:(double)a0 playableAspect:(double)a1 playableContentMode:(int)a2; - (void)setForceDisableBuildAnimation:(BOOL)a0; - (void)setForceDisableLoop:(BOOL)a0; - (void)setIsFrontFacingCamera:(BOOL)a0; - (void)setLoopTimeOverride:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (void)setLoopTimeOverrideEnabled:(BOOL)a0; - (void)setMaskPoints:(id)a0; - (void)setNodeIDToCache:(unsigned int)a0; - (void)setQuaternion:(double)a0 :(double)a1 :(double)a2 :(double)a3; - (void)setSketchStrokes:(id)a0; - (void)setTopLevelGroupTransform:(id)a0; - (void)setTopLevelOpacity:(double)a0; - (void)setTranscriptionText:(id)a0; - (void)setUseLocalLoopTime:(BOOL)a0; - (void)setupPublishedParameters:(id)a0; - (void)setupTransitionParameters:(id)a0; - (int)stillImageInverseToneMapOperator:(id)a0; - (BOOL)supportsExtendedRangeInputs; - (BOOL)supportsFlippingText; - (BOOL)supportsOrientation; - (BOOL)supportsParam:(id)a0; - (struct PVCGPointQuad { struct CGPoint { double x0; double x1; } x0; struct CGPoint { double x0; double x1; } x1; struct CGPoint { double x0; double x1; } x2; struct CGPoint { double x0; double x1; } x3; })textCornersAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 index:(unsigned long long)a1 forcePosterFrame:(BOOL)a2 includeDropShadow:(BOOL)a3 scale:(struct CGPoint { double x0; double x1; })a4 viewSize:(struct CGSize { double x0; double x1; })a5 viewOrigin:(int)a6; - (id)textEditingBounds:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (id)textEditingBoundsAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 forcePosterFrame:(BOOL)a1 useParagraphBounds:(BOOL)a2 includeDropShadow:(BOOL)a3 includeMasks:(BOOL)a4; - (id)textTransformsAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 forcePosterFrame:(BOOL)a1 includeTransformAnimation:(BOOL)a2 viewSize:(struct CGSize { double x0; double x1; })a3 viewOrigin:(int)a4; - (id)textTransformsAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 forcePosterFrame:(BOOL)a1 viewSize:(struct CGSize { double x0; double x1; })a2 viewOrigin:(int)a3; - (unsigned int)timelineDurationInFrames; - (double)timelineDurationInSeconds; - (struct { long long x0; int x1; unsigned int x2; long long x3; })timelineFrameDuration; - (double)timelineFrameRate; - (struct { long long x0; int x1; unsigned int x2; long long x3; })timelineLastFrame; - (id)timelineMarkersOfType:(int)a0; - (struct { long long x0; int x1; unsigned int x2; long long x3; })timelineTimeFromComponentTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })timelineTimeRangeFromComponentTimeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0; - (struct { long long x0; int x1; unsigned int x2; long long x3; })transcriptionDuration; - (BOOL)transcriptionHitTest:(struct CGPoint { double x0; double x1; })a0 time:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1; - (id)transformAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 forcePosterFrame:(BOOL)a1 includeTransformAnimation:(BOOL)a2 viewSize:(struct CGSize { double x0; double x1; })a3 viewOrigin:(int)a4; - (id)transformAtTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 forcePosterFrame:(BOOL)a1 viewSize:(struct CGSize { double x0; double x1; })a2 viewOrigin:(int)a3; - (void)updateInspectableProperties; - (void)updateInspectableProperties:(id)a0; - (void)updateInspectableProperties_NoLock:(id)a0 componentTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1; - (void)updateSketchAnimation:(id)a0 defaultProperties:(id)a1 time:(struct { long long x0; int x1; unsigned int x2; long long x3; })a2; - (BOOL)useLocalLoopTime; @end