diff --git a/src/pycbsdk/cbhw/packet/abstract.py b/src/pycbsdk/cbhw/packet/abstract.py index 0872b6d..3d2e068 100644 --- a/src/pycbsdk/cbhw/packet/abstract.py +++ b/src/pycbsdk/cbhw/packet/abstract.py @@ -2,6 +2,15 @@ from ctypes import * import struct import numpy as np + + +class classproperty(object): + def __init__(self, f): + self.f = f + + def __get__(self, obj, owner): + return self.f(owner) + import numpy.typing from .common import ( CBPacketType, diff --git a/src/pycbsdk/cbhw/packet/header/v311.py b/src/pycbsdk/cbhw/packet/header/v311.py index 8025b6f..80d6433 100644 --- a/src/pycbsdk/cbhw/packet/header/v311.py +++ b/src/pycbsdk/cbhw/packet/header/v311.py @@ -1,6 +1,9 @@ from ctypes import * +from ..abstract import classproperty + + class CBPacketHeader(Structure): _pack_ = 1 _fields_ = [ @@ -13,7 +16,6 @@ class CBPacketHeader(Structure): ), # Number of 32-bit elements in packet body. * 4 to get number of bytes. ] - @classmethod - @property + @classproperty def HEADER_FORMAT(cls): return "