/// <summary> /// Create a new apeture work queue priority key object /// </summary> /// <param name="aperturePriority"></param> /// <param name="distanceToClosestFocus"></param> internal ApertureWorkQueuePriority( Level.AperturePriority aperturePriority, int distanceToClosestFocus, ChunkResolutionAperture.FocusAdjustmentType adjustmentType = ChunkResolutionAperture.FocusAdjustmentType.InFocus ) { this.aperturePriority = aperturePriority; this.distanceToClosestFocus = distanceToClosestFocus; this.adjustmentType = adjustmentType; }
/// <summary> /// Get the priority object for a given chunk being loaded by the given apeture /// </summary> /// <param name="chunkID"></param> /// <param name="aperture"></param> /// <returns></returns> ApertureWorkQueuePriority getCurrentPriorityForChunk( Chunk.ID chunkID, ChunkResolutionAperture aperture, ChunkResolutionAperture.FocusAdjustmentType adjustmentType = ChunkResolutionAperture.FocusAdjustmentType.InFocus ) { return(new ApertureWorkQueuePriority( aperture.priority, (int)getDistanceToClosestFocus(chunkID, aperture.yWeightMultiplier), adjustmentType )); }