import pickle
import os
from enum import Enum, auto
import string
import logging
from config import Config

basepath = os.path.dirname(__file__)
shelfconfigfile = basepath + Config.STATE_PATH+'shelfconfig.pkl'

class LEDColorSort(Enum):
    GRB = 1
    RGB = 2
    
class _shelfconfig:
    def __init__(self):        
        self.LED_ColorSort = LEDColorSort.RGB.value
        self.LED_COUNT=1000
        self.TOWER_CUSTCONTROL=0
    def Save(self):
        with open(shelfconfigfile, 'wb') as f:
            pickle.dump(self, f)

shelfconfig:_shelfconfig
shelfconfig = _shelfconfig()
if os.path.exists(shelfconfigfile):
    with open(shelfconfigfile, 'rb') as f:
        a = pickle.load(f)
        for it in a.__dict__.items():
            if it[0].find('__')>=0 or it[0]=='Save':
                continue
            if shelfconfig.__dict__.get(it[0]) is not None:
                shelfconfig.__dict__[it[0]]=a.__dict__[it[0]]