init eACGM
This commit is contained in:
35
eacgm/sampler/base.py
Normal file
35
eacgm/sampler/base.py
Normal file
@@ -0,0 +1,35 @@
|
||||
class BaseSamplerState:
|
||||
task:str
|
||||
pid:int
|
||||
cpu:int
|
||||
timestamp:int
|
||||
message:str
|
||||
|
||||
def __init__(self) -> None:
|
||||
self.task = None
|
||||
self.pid = None
|
||||
self.cpu = None
|
||||
self.timestamp = None
|
||||
self.message = None
|
||||
return
|
||||
|
||||
def is_none(self) -> bool:
|
||||
return self.task is None
|
||||
|
||||
def __repr__(self) -> str:
|
||||
info = f"{self.task} {self.pid} {self.cpu} {self.timestamp} {self.message}"
|
||||
return info
|
||||
|
||||
class BaseSampler:
|
||||
def __init__(self, name:str) -> None:
|
||||
self.name = name
|
||||
return
|
||||
|
||||
def run(self) -> None:
|
||||
raise NotImplementedError
|
||||
|
||||
def sample(self):
|
||||
raise NotImplementedError
|
||||
|
||||
def close(self) -> None:
|
||||
raise NotImplementedError
|
Reference in New Issue
Block a user