feat: 新增标签过滤器类

This commit is contained in:
bmy
2024-05-22 18:50:21 +08:00
parent 0817fb1fd1
commit 64970fd6a7
6 changed files with 148 additions and 20 deletions

View File

@@ -1,5 +1,7 @@
from enum import Enum
from loguru import logger
from utils import label_filter
from utils import tlabel
import time
# 任务类
@@ -73,7 +75,16 @@ class task_queuem(task):
# 人员施救
class get_block():
def find():
return True
# 目标检测红/蓝方块
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.RBLOCK)
ret2, list2 = filter.get(tlabel.BBLOCK)
if (ret1 > 0) or (ret2 > 0):
logger.info("[TASK1]# find label")
return True
else:
return False
def exec():
pass
@@ -81,56 +92,123 @@ class get_block():
# 紧急转移
class put_block():
def find():
return False
# 目标检测医院
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.HOSPITAL)
if ret1 > 0:
return True
else:
return False
def exec():
pass
# 整装上阵
class get_bball():
def find():
return False
# 目标检测黄球
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.YBALL)
if ret1 > 0:
return True
else:
return False
def exec():
pass
# 通信抢修
class up_tower():
def find():
return False
# 目标检测通信塔
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.YBALL)
if ret1 > 0:
return True
else:
return False
def exec():
pass
# 高空排险
class get_rball():
def find():
return False
# 目标检测红球
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.RBALL)
if ret1 > 0:
return True
else:
return False
def exec():
pass
# 派发物资
class put_bball():
def find():
return False
# 目标检测通信塔
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.BASKET)
if ret1 > 0:
return True
else:
return False
def exec():
pass
# 物资盘点
class put_hanoi():
class put_hanoi1():
def find():
return False
# 目标检测左右转向标识
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.MARKL)
ret2, list2 = filter.get(tlabel.MARKR)
if (ret1 > 0) or (ret2 > 0):
return True
else:
return False
def exec():
pass
class put_hanoi2():
def find():
# 目标检测左右转向标识
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.LPILLAR)
if ret1 > 0:
return True
else:
return False
def exec():
pass
# 应急避险
class move_area():
def find():
return False
# 目标检测标志牌
# TODO 如何确保在都检测标志牌的情况下,和下一个任务进行区分
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.SIGN)
if ret1 > 0:
return True
else:
return False
def exec():
pass
# 扫黑除暴
class kick_ass():
def find():
return False
# 目标检测标志牌
# TODO 如何确保在都检测标志牌的情况下,和上一个任务进行区分
filter = label_filter(None)
ret1, list1 = filter.get(tlabel.SIGN)
if ret1 > 0:
return True
else:
return False
def exec():
pass