Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
C
CCS
Manage
Activity
Members
Plan
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Marko Mecina
CCS
Commits
cf5e1ba5
Commit
cf5e1ba5
authored
2 years ago
by
Marko Mecina
Browse files
Options
Downloads
Patches
Plain Diff
use standalone file for TST datapool item overview by default, instead of MIB
parent
1e989456
Branches
Branches containing commit
No related tags found
No related merge requests found
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
Tst/tst/data_model.py
+2
-2
2 additions, 2 deletions
Tst/tst/data_model.py
Tst/tst/data_pool_tab.py
+43
-40
43 additions, 40 deletions
Tst/tst/data_pool_tab.py
egse.cfg
+1
-0
1 addition, 0 deletions
egse.cfg
with
46 additions
and
42 deletions
Tst/tst/data_model.py
+
2
−
2
View file @
cf5e1ba5
...
@@ -57,8 +57,8 @@ import confignator
...
@@ -57,8 +57,8 @@ import confignator
import
toolbox
import
toolbox
logger
=
logging
.
getLogger
(
__name__
)
logger
=
logging
.
getLogger
(
__name__
)
logger
.
setLevel
(
level
=
logging
.
DEBU
G
)
logger
.
setLevel
(
level
=
logging
.
WARNIN
G
)
console_hdlr
=
toolbox
.
create_console_handler
(
hdlr_lvl
=
logging
.
DEBU
G
)
console_hdlr
=
toolbox
.
create_console_handler
(
hdlr_lvl
=
logging
.
WARNIN
G
)
logger
.
addHandler
(
hdlr
=
console_hdlr
)
logger
.
addHandler
(
hdlr
=
console_hdlr
)
# using gettext for internationalization (i18n)
# using gettext for internationalization (i18n)
...
...
This diff is collapsed.
Click to expand it.
Tst/tst/data_pool_tab.py
+
43
−
40
View file @
cf5e1ba5
...
@@ -5,27 +5,37 @@ gi.require_version("GtkSource", "3.0")
...
@@ -5,27 +5,37 @@ gi.require_version("GtkSource", "3.0")
from
gi.repository
import
Gtk
,
Gdk
,
GtkSource
from
gi.repository
import
Gtk
,
Gdk
,
GtkSource
import
confignator
import
confignator
import
sys
import
sys
import
logging
sys
.
path
.
append
(
confignator
.
get_option
(
'
paths
'
,
'
ccs
'
))
sys
.
path
.
append
(
confignator
.
get_option
(
'
paths
'
,
'
ccs
'
))
import
ccs_function_lib
as
cfl
import
ccs_function_lib
as
cfl
import
s2k_partypes
as
s2k
import
s2k_partypes
as
s2k
dictionary_of_data_pool
=
cfl
.
get_data_pool_items
()
try
:
list_of_data_pool
=
list
(
dictionary_of_data_pool
.
keys
())
DP_ITEMS_SRC_FILE
=
confignator
.
get_option
(
'
database
'
,
'
datapool-items
'
)
except
confignator
.
config
.
configparser
.
NoOptionError
:
DP_ITEMS_SRC_FILE
=
None
data_pool_sublist
=
[]
logger
=
logging
.
getLogger
()
pid_list
=
[]
def
reload_dp_data
():
def
reload_dp_data
():
global
DP_ITEMS_SRC_FILE
global
dictionary_of_data_pool
global
dictionary_of_data_pool
global
list_of_data_pool
global
list_of_data_pool
global
data_pool_sublist
global
data_pool_sublist
global
pid_list
try
:
dictionary_of_data_pool
=
cfl
.
get_data_pool_items
(
src_file
=
DP_ITEMS_SRC_FILE
)
except
FileNotFoundError
:
logger
.
warning
(
'
Could not load data pool from file: {}. Using MIB instead.
'
.
format
(
DP_ITEMS_SRC_FILE
))
dictionary_of_data_pool
=
cfl
.
get_data_pool_items
()
dictionary_of_data_pool
=
cfl
.
get_data_pool_items
()
if
not
isinstance
(
dictionary_of_data_pool
,
list
):
list_of_data_pool
=
list
(
dictionary_of_data_pool
.
keys
())
list_of_data_pool
=
list
(
dictionary_of_data_pool
.
keys
())
data_pool_sublist
,
pid_list
=
get_data_pool_sublist
()
data_pool_sublist
=
get_data_pool_sublist
()
else
:
data_pool_sublist
=
dictionary_of_data_pool
def
get_data_pool_sublist
():
def
get_data_pool_sublist
():
...
@@ -35,20 +45,28 @@ def get_data_pool_sublist():
...
@@ -35,20 +45,28 @@ def get_data_pool_sublist():
pcf_ptc
=
counter
[
2
]
pcf_ptc
=
counter
[
2
]
pcf_pfc
=
counter
[
3
]
pcf_pfc
=
counter
[
3
]
if
pcf_ptc
==
None
:
if
pcf_ptc
is
None
:
data_type
=
"
None
"
data_type
=
"
None
"
else
:
else
:
data_type
=
s2k
.
ptt
[
pcf_ptc
][
pcf_pfc
]
data_type
=
s2k
.
ptt
[
pcf_ptc
][
pcf_pfc
]
if
pcf_pid
not
in
pid_list
:
data_pool_sublist
.
append
([
pcf_pid
,
pcf_descr
,
data_type
,
''
,
''
,
''
])
pid_list
.
append
(
pcf_pid
)
data_pool_sublist
.
append
([
pcf_pid
,
pcf_descr
,
data_type
])
return
data_pool_sublist
return
data_pool_sublist
,
pid_list
data_pool_sublist
=
[]
try
:
dictionary_of_data_pool
=
cfl
.
get_data_pool_items
(
src_file
=
DP_ITEMS_SRC_FILE
)
except
FileNotFoundError
:
logger
.
warning
(
'
Could not load data pool from file: {}. Using MIB instead.
'
.
format
(
DP_ITEMS_SRC_FILE
))
dictionary_of_data_pool
=
cfl
.
get_data_pool_items
()
data_pool_sublist
,
pid_list
=
get_data_pool_sublist
()
if
not
isinstance
(
dictionary_of_data_pool
,
list
):
list_of_data_pool
=
list
(
dictionary_of_data_pool
.
keys
())
data_pool_sublist
=
get_data_pool_sublist
()
else
:
data_pool_sublist
=
dictionary_of_data_pool
class
DataPoolTable
(
Gtk
.
Grid
):
class
DataPoolTable
(
Gtk
.
Grid
):
...
@@ -56,7 +74,7 @@ class DataPoolTable(Gtk.Grid):
...
@@ -56,7 +74,7 @@ class DataPoolTable(Gtk.Grid):
def
__init__
(
self
,
*
args
,
**
kwargs
):
def
__init__
(
self
,
*
args
,
**
kwargs
):
super
().
__init__
(
*
args
,
**
kwargs
)
super
().
__init__
(
*
args
,
**
kwargs
)
self
.
data_pool_liststore
=
Gtk
.
ListStore
(
str
,
str
,
str
)
self
.
data_pool_liststore
=
Gtk
.
ListStore
(
str
,
str
,
str
,
str
,
str
,
str
)
for
data_pool_ref
in
data_pool_sublist
:
for
data_pool_ref
in
data_pool_sublist
:
self
.
data_pool_liststore
.
append
(
list
(
data_pool_ref
))
self
.
data_pool_liststore
.
append
(
list
(
data_pool_ref
))
self
.
current_filter_data_pool
=
None
self
.
current_filter_data_pool
=
None
...
@@ -66,30 +84,17 @@ class DataPoolTable(Gtk.Grid):
...
@@ -66,30 +84,17 @@ class DataPoolTable(Gtk.Grid):
# setting the filter function
# setting the filter function
self
.
data_pool_filter
.
set_visible_func
(
self
.
data_pool_filter_func
)
self
.
data_pool_filter
.
set_visible_func
(
self
.
data_pool_filter_func
)
self
.
pid
=
None
# Create ListStores for the ComboBoxes
# Create ListStores for the ComboBoxes
self
.
pid_liststore
=
Gtk
.
ListStore
(
str
)
#
self.pid_liststore = Gtk.ListStore(str)
for
pid_ref
in
pid_list
:
#
for pid_ref in pid_list:
self
.
pid_liststore
.
append
([
pid_ref
,
])
#
self.pid_liststore.append([pid_ref, ])
# self.current_filter_type = None
# self.current_filter_type = None
"""
self.pid_combo = Gtk.ComboBox.new_with_model(self.pid_liststore)
self.pid_combo.connect(
"
changed
"
, self.on_pid_combo_changed)
renderer_text = Gtk.CellRendererText()
self.pid_combo.pack_start(renderer_text, True)
self.pid_combo.add_attribute(renderer_text,
"
text
"
, 0)
self.attach(self.pid_combo, 0, 0, 1, 1)
self.clear_button = Gtk.Button(label=
"
Clear
"
)
self.clear_button.connect(
"
clicked
"
, self.on_clear_button_clicked)
self.attach_next_to(
self.clear_button, self.pid_combo, Gtk.PositionType.RIGHT, 1, 1
)
"""
# creating the treeview, making it use the filter a model, adding columns
# creating the treeview, making it use the filter a model, adding columns
self
.
treeview
=
Gtk
.
TreeView
.
new_with_model
(
Gtk
.
TreeModelSort
(
self
.
data_pool_filter
))
self
.
treeview
=
Gtk
.
TreeView
.
new_with_model
(
Gtk
.
TreeModelSort
(
self
.
data_pool_filter
))
for
i
,
column_title
in
enumerate
([
"
PID
"
,
"
DESCR
"
,
"
DATATYPE
"
]):
for
i
,
column_title
in
enumerate
([
"
PID
"
,
"
NAME
"
,
"
DATATYPE
"
,
"
MULT
"
,
"
PAR/VAR
"
,
"
DESCR
"
]):
renderer
=
Gtk
.
CellRendererText
()
renderer
=
Gtk
.
CellRendererText
()
column
=
Gtk
.
TreeViewColumn
(
column_title
,
renderer
,
text
=
i
)
column
=
Gtk
.
TreeViewColumn
(
column_title
,
renderer
,
text
=
i
)
column
.
set_sort_column_id
(
i
)
column
.
set_sort_column_id
(
i
)
...
@@ -97,7 +102,7 @@ class DataPoolTable(Gtk.Grid):
...
@@ -97,7 +102,7 @@ class DataPoolTable(Gtk.Grid):
# Handle selection
# Handle selection
self
.
selected_row
=
self
.
treeview
.
get_selection
()
self
.
selected_row
=
self
.
treeview
.
get_selection
()
self
.
selected_row
.
connect
(
"
changed
"
,
self
.
item_selected
)
#
self.selected_row.connect("changed", self.item_selected)
# setting up layout, treeview in scrollwindow
# setting up layout, treeview in scrollwindow
self
.
scrollable_treelist
=
Gtk
.
ScrolledWindow
()
self
.
scrollable_treelist
=
Gtk
.
ScrolledWindow
()
...
@@ -133,10 +138,7 @@ class DataPoolTable(Gtk.Grid):
...
@@ -133,10 +138,7 @@ class DataPoolTable(Gtk.Grid):
def
item_selected
(
self
,
selection
):
def
item_selected
(
self
,
selection
):
model
,
row
=
selection
.
get_selected
()
model
,
row
=
selection
.
get_selected
()
if
row
is
not
None
:
if
row
is
not
None
:
global
pid
self
.
pid
=
model
[
row
][:
2
]
pid
=
model
[
row
][
0
]
else
:
pass
def
data_pool_filter_func
(
self
,
model
,
iter
,
data
):
def
data_pool_filter_func
(
self
,
model
,
iter
,
data
):
...
@@ -151,7 +153,8 @@ class DataPoolTable(Gtk.Grid):
...
@@ -151,7 +153,8 @@ class DataPoolTable(Gtk.Grid):
def
on_drag_data_get
(
self
,
treeview
,
drag_context
,
selection_data
,
info
,
time
,
*
args
):
def
on_drag_data_get
(
self
,
treeview
,
drag_context
,
selection_data
,
info
,
time
,
*
args
):
treeselection
=
treeview
.
get_selection
()
treeselection
=
treeview
.
get_selection
()
model
,
my_iter
=
treeselection
.
get_selected
()
model
,
my_iter
=
treeselection
.
get_selected
()
selection_data
.
set_text
(
pid
,
-
1
)
if
model
is
not
None
and
my_iter
is
not
None
:
selection_data
.
set_text
(
model
[
my_iter
][
0
],
-
1
)
def
on_drag_begin
(
self
,
*
args
):
def
on_drag_begin
(
self
,
*
args
):
pass
pass
This diff is collapsed.
Click to expand it.
egse.cfg
+
1
−
0
View file @
cf5e1ba5
...
@@ -12,6 +12,7 @@ user = egse
...
@@ -12,6 +12,7 @@ user = egse
password
=
xrayvision
password
=
xrayvision
host
=
127.0.0.1
host
=
127.0.0.1
mib-schema
=
mib_smile_sxi
mib-schema
=
mib_smile_sxi
datapool-items
=
/home/marko/space/smile/IDB/dp_sxi_iasw_v0.2R_20220817.csv
[logging]
[logging]
log-dir
=
${paths:base}/logs
log-dir
=
${paths:base}/logs
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment