Files
caplot/caplot.py

56 lines
1.1 KiB
Python
Executable File

#!/usr/bin/env python
import warnings
warnings.filterwarnings("error")
import argparse
parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
parser.add_argument("pvname")
parser.add_argument("-n", "--num", type=int, default=1000)
clargs = parser.parse_args()
from functools import partial
from animation import Animation
from plots import Plot0D, Plot1D, Plot2D
from sources import Camera, Source
def decide_src_fun(pvname, num):
pvname = pvname.upper()
if pvname.endswith(":FPICTURE"):
print("Camera", pvname)
src = Camera(pvname)
fun = Plot2D
return src, fun
print("Source", pvname)
src = Source(pvname)
print(src.nelm)
if src.nelm == 0:
raise SystemExit(f"{src}: {src.value}")
if src.nelm == 1:
print("Scalar")
if num <= 0:
num = None
fun = partial(Plot0D, num)
else:
print("Curve")
fun = Plot1D
return src, fun
pvname = clargs.pvname
num = clargs.num
src, fun = decide_src_fun(pvname, num)
Animation(src, fun)