public static bool CheckAiAvailable(AI ai) { if (!PkgUtils.IsAiAvailable(ai)) { ShowMessage("The selected AI is not installed!", "Error"); I.Cancel("Selected AI not available.", true); return(false); } if (I.current.ai.aiName.ToUpper().Contains("CUDA") && NvApi.gpuList.Count < 1) { ShowMessage("An Nvidia GPU is required for CUDA implementations!\n\nTry an NCNN implementation instead.", "Error"); I.Cancel("No CUDA-capable graphics card available.", true); return(false); } return(true); }
static bool EntryIsValid(InterpSettings entry) { if (entry.inPath == null || (IOUtils.IsPathDirectory(entry.inPath) && !Directory.Exists(entry.inPath)) || (!IOUtils.IsPathDirectory(entry.inPath) && !File.Exists(entry.inPath))) { Logger.Log("[Queue] Can't process queue entry: Input path is invalid."); return(false); } if (entry.outPath == null || !Directory.Exists(entry.outPath)) { Logger.Log("[Queue] Can't process queue entry: Output path is invalid."); return(false); } if (!PkgUtils.IsAiAvailable(entry.ai)) { Logger.Log("[Queue] Can't process queue entry: Selected AI is not available."); return(false); } return(true); }