GUI: updates to reference_tools_panel.py WIP
This commit is contained in:
@@ -26,8 +26,6 @@ from aaredaq.daq import AareDAQ
|
||||
|
||||
from aaredaq.camera_stat_thread import start_image_stats_receiver, stop_image_stats_receiver
|
||||
|
||||
from aaregui.panels.reference_tools_panel import ReferenceToolsModel
|
||||
|
||||
app = FastAPI()
|
||||
|
||||
# OAuth2 setup
|
||||
@@ -246,6 +244,13 @@ def get_spreadsheet(data: TokenData) -> SampleShortInfoList:
|
||||
def get_reference_tools() -> SampleShortInfoList:
|
||||
return cfg.reference_tools
|
||||
|
||||
async def reference_tools_event_stream() -> AsyncGenerator[str, None]:
|
||||
try:
|
||||
while True:
|
||||
yield get_reference_tools().model_dump_json()
|
||||
await asyncio.sleep(10)
|
||||
except asyncio.CancelledError:
|
||||
return
|
||||
|
||||
async def spreadsheet_event_stream(data: TokenData) -> AsyncGenerator[str, None]:
|
||||
try:
|
||||
@@ -270,6 +275,18 @@ async def spreadsheet_sse(token: str = Depends(oauth2_scheme)):
|
||||
}
|
||||
)
|
||||
|
||||
@app.get("/sse/reference_tools")
|
||||
async def reference_tools_sse():
|
||||
return StreamingResponse(
|
||||
reference_tools_event_stream(),
|
||||
media_type="text/event-stream",
|
||||
headers={
|
||||
"Cache-Control": "no-cache",
|
||||
"Connection": "keep-alive",
|
||||
"Access-Control-Allow-Origin": "*",
|
||||
"Access-Control-Allow-Headers": "Cache-Control"
|
||||
}
|
||||
)
|
||||
|
||||
@app.get("/sample/spreadsheet")
|
||||
async def spreadsheet(token: str = Depends(oauth2_scheme)) -> SampleShortInfoList:
|
||||
|
||||
Reference in New Issue
Block a user