/******************************************************************************* * Copyright (c) 2015 ARM Ltd. and others * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * ARM Ltd and ARM Germany GmbH - Initial API and implementation *******************************************************************************/ package com.arm.cmsis.pack.rte.packs; import java.util.Collection; import java.util.Set; import com.arm.cmsis.pack.enums.EVersionMatchMode; /** * Represents RTE view on a ICpPackFamily */ public interface IRtePackFamily extends IRtePackItem { /** * Returns child IRtePack for given version * @param version requested pack version or null to get the latest * @return IRtePack for given packId */ IRtePack getRtePack(String version); /** * Returns latest IRtePack * @return latest IRtePack in the family */ IRtePack getLatestRtePack(); /** * Returns set of selected pack versions * @return set of selected pack versions */ Set<String> getSelectedVersions(); /** * Returns set of selected pack versions * @return set of selected pack versions */ Collection<IRtePack> getSelectedPacks(); /** * Sets version match mode that should be use when resolving the packs in family * @param mode version match mode to set */ void setVersionMatchMode(EVersionMatchMode mode); /** * Updates family version match mode according to selection of packs */ void updateVersionMatchMode(); }