File size: 2,020 Bytes
ed9f15f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
/**
* Application State Management
*/
export const appState = {
models: {
classifier: null,
poorGood: null,
grader: null,
yolo: null
},
croppedEmbryos: [],
embryoResults: [],
embryoRemarks: {}, // Store remarks for each embryo by index
currentEmbryoIndex: 0,
currentImage: null,
zoomLevel: 1,
finalResult: null
};
/**
* Update model state
*/
export function setModel(modelName, model) {
appState.models[modelName] = model;
}
/**
* Get model by name
*/
export function getModel(modelName) {
return appState.models[modelName];
}
/**
* Set cropped embryos
*/
export function setCroppedEmbryos(embryos) {
appState.croppedEmbryos = embryos;
appState.currentEmbryoIndex = 0;
}
/**
* Get current embryo
*/
export function getCurrentEmbryo() {
return appState.croppedEmbryos[appState.currentEmbryoIndex];
}
/**
* Set current image
*/
export function setCurrentImage(imageData) {
appState.currentImage = imageData;
}
/**
* Update zoom level
*/
export function setZoomLevel(level) {
appState.zoomLevel = level;
}
/**
* Get zoom level
*/
export function getZoomLevel() {
return appState.zoomLevel;
}
/**
* Set current embryo index
*/
export function setCurrentEmbryoIndex(index) {
appState.currentEmbryoIndex = index;
}
/**
* Get embryo count
*/
export function getEmbryoCount() {
return appState.croppedEmbryos.length;
}
/**
* Set remark for an embryo
*/
export function setEmbryoRemark(index, remark) {
appState.embryoRemarks[index] = remark;
}
/**
* Get remark for an embryo
*/
export function getEmbryoRemark(index) {
return appState.embryoRemarks[index] || '';
}
/**
* Get all remarks
*/
export function getAllRemarks() {
return appState.embryoRemarks;
}
/**
* Clear all remarks
*/
export function clearAllRemarks() {
appState.embryoRemarks = {};
}
|