mirror of
https://github.com/PhotonVision/photonvision
synced 2026-07-05 03:21:40 +00:00
Check offline updates for incompatibility (#2361)
This commit is contained in:
@@ -23,32 +23,38 @@ import org.photonvision.common.configuration.NeuralNetworkModelsSettings;
|
||||
public class UIGeneralSettings {
|
||||
public UIGeneralSettings(
|
||||
String version,
|
||||
String imageVersion,
|
||||
String gpuAcceleration,
|
||||
boolean mrCalWorking,
|
||||
NeuralNetworkModelsSettings.ModelProperties[] availableModels,
|
||||
List<String> supportedBackends,
|
||||
String hardwareModel,
|
||||
String hardwarePlatform,
|
||||
String wpilibArch,
|
||||
boolean conflictingHostname,
|
||||
String conflictingCameras) {
|
||||
this.version = version;
|
||||
this.imageVersion = imageVersion;
|
||||
this.gpuAcceleration = gpuAcceleration;
|
||||
this.mrCalWorking = mrCalWorking;
|
||||
this.availableModels = availableModels;
|
||||
this.supportedBackends = supportedBackends;
|
||||
this.hardwareModel = hardwareModel;
|
||||
this.hardwarePlatform = hardwarePlatform;
|
||||
this.wpilibArch = wpilibArch;
|
||||
this.conflictingHostname = conflictingHostname;
|
||||
this.conflictingCameras = conflictingCameras;
|
||||
}
|
||||
|
||||
public String version;
|
||||
public String imageVersion;
|
||||
public String gpuAcceleration;
|
||||
public boolean mrCalWorking;
|
||||
public NeuralNetworkModelsSettings.ModelProperties[] availableModels;
|
||||
public List<String> supportedBackends;
|
||||
public String hardwareModel;
|
||||
public String hardwarePlatform;
|
||||
public String wpilibArch;
|
||||
public boolean conflictingHostname;
|
||||
public String conflictingCameras;
|
||||
}
|
||||
|
||||
@@ -24,6 +24,7 @@ import org.photonvision.common.LoadJNI.JNITypes;
|
||||
import org.photonvision.common.configuration.NeuralNetworkModelManager;
|
||||
import org.photonvision.common.configuration.PhotonConfiguration;
|
||||
import org.photonvision.common.dataflow.networktables.NetworkTablesManager;
|
||||
import org.photonvision.common.hardware.OsImageData;
|
||||
import org.photonvision.common.hardware.Platform;
|
||||
import org.photonvision.common.networking.NetworkManager;
|
||||
import org.photonvision.common.networking.NetworkUtils;
|
||||
@@ -52,6 +53,9 @@ public class UIPhotonConfiguration {
|
||||
!c.getHardwareConfig().ledPins.isEmpty()),
|
||||
new UIGeneralSettings(
|
||||
PhotonVersion.versionString,
|
||||
OsImageData.IMAGE_METADATA.isPresent()
|
||||
? OsImageData.IMAGE_METADATA.get().commitTag()
|
||||
: "",
|
||||
// TODO add support for other types of GPU accel
|
||||
LoadJNI.hasLoaded(JNITypes.LIBCAMERA) ? "Zerocopy Libcamera Working" : "",
|
||||
LoadJNI.hasLoaded(JNITypes.MRCAL),
|
||||
@@ -61,6 +65,7 @@ public class UIPhotonConfiguration {
|
||||
? Platform.getHardwareModel()
|
||||
: c.getHardwareConfig().deviceName,
|
||||
Platform.getPlatformName(),
|
||||
Platform.getNativePlatform(),
|
||||
NetworkTablesManager.getInstance().conflictingHostname,
|
||||
NetworkTablesManager.getInstance().conflictingCameras),
|
||||
c.getApriltagFieldLayout()),
|
||||
|
||||
@@ -38,8 +38,11 @@ public class OsImageData {
|
||||
private static Path imageVersionFile = Path.of("/opt/photonvision/image-version");
|
||||
private static Path imageMetadataFile = Path.of("/opt/photonvision/image-version.json");
|
||||
|
||||
/** The OS image version string, if available. This is legacy, use {@link ImageMetadata}. */
|
||||
public static final Optional<String> IMAGE_VERSION = getImageVersion();
|
||||
/**
|
||||
* The OS image version string, if available. This is legacy, use {@link ImageMetadata}.
|
||||
* Deprecated for removal in 2027.
|
||||
*/
|
||||
@Deprecated public static final Optional<String> IMAGE_VERSION = getImageVersion();
|
||||
|
||||
private static Optional<String> getImageVersion() {
|
||||
if (!imageVersionFile.toFile().exists()) {
|
||||
|
||||
Reference in New Issue
Block a user