Skip to content

Commit

Permalink
devtool edits
Browse files Browse the repository at this point in the history
  • Loading branch information
SatyrDiamond committed Nov 18, 2024
1 parent 69de713 commit 6fdded7
Show file tree
Hide file tree
Showing 2 changed files with 87 additions and 85 deletions.
85 changes: 85 additions & 0 deletions devtools/func__paramremap.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@

import chardet
import numpy as np
import os

dt_cvpj = np.dtype([
('paramid', np.str_, 32),
('extid', np.str_, 32),
('def_one', np.float64),
('def', np.float64),
('min', np.float64),
('max', np.float64),
('mathtype', np.str_, 3),
('mathval', np.float64),
('visname', np.str_, 64)
])

dt_vst2 = np.dtype([
('paramnum', np.short),
('visname', np.str_, 16)
])

dt_vst3 = np.dtype([
('paramnum', np.short),
('visname', np.str_, 24)
])

class paramremap:
def __init__(self, filename):
self.cvpj = np.zeros(0, dtype=dt_cvpj)
self.vst2 = np.zeros(0, dtype=dt_vst2)
self.vst3 = np.zeros(0, dtype=dt_vst3)
if os.path.exists(filename):
with open(filename, 'rb') as csvfile:
csvdata = csvfile.read()
csvcharset = chardet.detect(csvdata)['encoding']
csvtext = csvdata.decode(csvcharset).splitlines()

if len(csvtext)>2:
self.cvpj = np.zeros(len(csvtext)-2, dtype=dt_cvpj)
self.vst2 = np.zeros(len(csvtext)-2, dtype=dt_vst2)
self.vst3 = np.zeros(len(csvtext)-2, dtype=dt_vst3)

self.cvpj['min'] = 0
self.cvpj['max'] = 1
self.cvpj['mathtype'] = 'lin'
self.cvpj['mathval'] = 1
self.vst2['paramnum'] = -1
self.vst3['paramnum'] = -1

self.usedparamnames = {'cvpj': [],'vst2': [],'vst3': []}

for count, row_unsep in enumerate(csvtext):
splitsep = row_unsep.split(',')
if count == 0:
data_exttypes = splitsep

elif count == 1:
data_typenames = splitsep
data_len = len(data_exttypes)
for n,v in enumerate(data_typenames):
self.usedparamnames[data_exttypes[n]].append(v)
else:
numparam = count-2
for x in range(max(data_len, len(splitsep))):
extname = data_exttypes[x]
dataname = data_typenames[x]
dataval = splitsep[x]

if dataname in ['def_one','def','min','max']: dataval = float(dataval)
if dataname == 'paramnum': dataval = float(dataval)
if extname == 'cvpj': self.cvpj[numparam][dataname] = dataval
if extname == 'vst2': self.vst2[numparam][dataname] = dataval
if extname == 'vst3': self.vst3[numparam][dataname] = dataval

if 'def' not in self.usedparamnames['cvpj']:
mulvals = self.cvpj['max']-self.cvpj['min']
self.cvpj['def'] = np.asarray(self.cvpj['def_one'], dtype=np.float64)
self.cvpj['def'] *= mulvals
self.cvpj['def'] += self.cvpj['min']
elif 'def_one' not in self.usedparamnames['cvpj']:
mulvals = self.cvpj['max']-self.cvpj['min']
self.cvpj['def_one'] = np.asarray(self.cvpj['def_one'], dtype=np.float64)
self.cvpj['def_one'] -= self.cvpj['min']
self.cvpj['def_one'] /= mulvals
87 changes: 2 additions & 85 deletions devtools/remap_to_dset.py
Original file line number Diff line number Diff line change
@@ -1,95 +1,12 @@
import os
import sys

import func__paramremap
dpath_befr = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..')
relpath = os.path.abspath(dpath_befr)
sys.path.append(relpath)
from objects.datastorage import dataset

import chardet
import numpy as np

dt_cvpj = np.dtype([
('paramid', np.str_, 32),
('extid', np.str_, 32),
('def_one', np.float64),
('def', np.float64),
('min', np.float64),
('max', np.float64),
('mathtype', np.str_, 3),
('mathval', np.float64),
('visname', np.str_, 64)
])

dt_vst2 = np.dtype([
('paramnum', np.short),
('visname', np.str_, 16)
])

dt_vst3 = np.dtype([
('paramnum', np.short),
('visname', np.str_, 24)
])

class paramremap:
def __init__(self, filename):
self.cvpj = np.zeros(0, dtype=dt_cvpj)
self.vst2 = np.zeros(0, dtype=dt_vst2)
self.vst3 = np.zeros(0, dtype=dt_vst3)
if os.path.exists(filename):
with open(filename, 'rb') as csvfile:
csvdata = csvfile.read()
csvcharset = chardet.detect(csvdata)['encoding']
csvtext = csvdata.decode(csvcharset).splitlines()

if len(csvtext)>2:
self.cvpj = np.zeros(len(csvtext)-2, dtype=dt_cvpj)
self.vst2 = np.zeros(len(csvtext)-2, dtype=dt_vst2)
self.vst3 = np.zeros(len(csvtext)-2, dtype=dt_vst3)

self.cvpj['min'] = 0
self.cvpj['max'] = 1
self.cvpj['mathtype'] = 'lin'
self.cvpj['mathval'] = 1
self.vst2['paramnum'] = -1
self.vst3['paramnum'] = -1

self.usedparamnames = {'cvpj': [],'vst2': [],'vst3': []}

for count, row_unsep in enumerate(csvtext):
splitsep = row_unsep.split(',')
if count == 0:
data_exttypes = splitsep

elif count == 1:
data_typenames = splitsep
data_len = len(data_exttypes)
for n,v in enumerate(data_typenames):
self.usedparamnames[data_exttypes[n]].append(v)
else:
numparam = count-2
for x in range(max(data_len, len(splitsep))):
extname = data_exttypes[x]
dataname = data_typenames[x]
dataval = splitsep[x]

if dataname in ['def_one','def','min','max']: dataval = float(dataval)
if dataname == 'paramnum': dataval = float(dataval)
if extname == 'cvpj': self.cvpj[numparam][dataname] = dataval
if extname == 'vst2': self.vst2[numparam][dataname] = dataval
if extname == 'vst3': self.vst3[numparam][dataname] = dataval

if 'def' not in self.usedparamnames['cvpj']:
mulvals = self.cvpj['max']-self.cvpj['min']
self.cvpj['def'] = np.asarray(self.cvpj['def_one'], dtype=np.float64)
self.cvpj['def'] *= mulvals
self.cvpj['def'] += self.cvpj['min']
elif 'def_one' not in self.usedparamnames['cvpj']:
mulvals = self.cvpj['max']-self.cvpj['min']
self.cvpj['def_one'] = np.asarray(self.cvpj['def_one'], dtype=np.float64)
self.cvpj['def_one'] -= self.cvpj['min']
self.cvpj['def_one'] /= mulvals

dn = 'magical8bitplug2'

infile = "..\\data_ext\\remap\\%s.csv" % dn
Expand All @@ -98,7 +15,7 @@ def __init__(self, filename):
dataset_cat = out_dset.category_add('plugin')

def create_object(infile, objname):
pmap_obj = paramremap(infile)
pmap_obj = func__paramremap.paramremap(infile)
dataset_object = dataset_cat.objects.create(objname)

for n, x in enumerate(pmap_obj.cvpj):
Expand Down

0 comments on commit 6fdded7

Please sign in to comment.