// // ASLayoutController.h // Texture // // Copyright (c) Facebook, Inc. and its affiliates. All rights reserved. // Changes after 4/13/2017 are: Copyright (c) Pinterest, Inc. All rights reserved. // Licensed under Apache 2.0: http://www.apache.org/licenses/LICENSE-2.0 // #import #include #import #import #import #import NS_ASSUME_NONNULL_BEGIN @class ASCollectionElement, ASElementMap; struct ASDirectionalScreenfulBuffer { CGFloat positiveDirection; // Positive relative to iOS Core Animation layer coordinate space. CGFloat negativeDirection; }; typedef struct ASDirectionalScreenfulBuffer ASDirectionalScreenfulBuffer; @protocol ASLayoutController - (void)setTuningParameters:(ASRangeTuningParameters)tuningParameters forRangeMode:(ASLayoutRangeMode)rangeMode rangeType:(ASLayoutRangeType)rangeType; - (ASRangeTuningParameters)tuningParametersForRangeMode:(ASLayoutRangeMode)rangeMode rangeType:(ASLayoutRangeType)rangeType; @property (nonatomic, readonly) CGRect bounds; /** Queries the layout for the items in the given rect. Called by ASRangeController. */ - (void)getLayoutItemsInRect:(CGRect)rect buffer:(std::vector *)buffer; @end NS_ASSUME_NONNULL_END