Difference between revisions of "Green Monster Doc"
Line 5: | Line 5: | ||
== Functionality Outline == | == Functionality Outline == | ||
− | [[File:GreenMonsterConcept. | + | [[File:GreenMonsterConcept.png|thumb|Functionality and class call order of the Green Monster rework.]] |
− | The purpose of reworking the | + | The purpose of reworking the Green Monster is so that the GUI will not rely on the ROOT GUI libraries which are old, and difficult to extend. This presents a challenge in that the new GUI has to interface with the legacy code in cfSockCli.c and cfSockSer.c. |
+ | |||
+ | The Green Monster now uses the python language GUI library TKinter, which is inbuilt into all distributions of python 3. The main file for the GUI is on adaq at <code>/adaqfs/home/ajzec/PyGreen/GreenMonster.py</code> The python files that create the GUI are in the same directory as that file, while the C++ files providing the Green Monster's back-end are located at <code>/adaqfs/home/ajzec/GM/cfSock/</code> | ||
+ | |||
+ | Each of the tabs in the GUI have their own python class file which acts as an interface to their own C++ class file. That C++ class file then becomes an interface to <code>cfSockCli.c</code> which is the legacy code that eventually attaches to the VXWorks boards in the counting house and injector crates. | ||
+ | |||
+ | The function of the Green Monster is to pass options, and variables up and down these levels. |
Revision as of 16:01, 10 April 2019
Green Monster appearance as it appeared on 2019-04-10.
Functionality Outline
The purpose of reworking the Green Monster is so that the GUI will not rely on the ROOT GUI libraries which are old, and difficult to extend. This presents a challenge in that the new GUI has to interface with the legacy code in cfSockCli.c and cfSockSer.c.
The Green Monster now uses the python language GUI library TKinter, which is inbuilt into all distributions of python 3. The main file for the GUI is on adaq at /adaqfs/home/ajzec/PyGreen/GreenMonster.py
The python files that create the GUI are in the same directory as that file, while the C++ files providing the Green Monster's back-end are located at /adaqfs/home/ajzec/GM/cfSock/
Each of the tabs in the GUI have their own python class file which acts as an interface to their own C++ class file. That C++ class file then becomes an interface to cfSockCli.c
which is the legacy code that eventually attaches to the VXWorks boards in the counting house and injector crates.
The function of the Green Monster is to pass options, and variables up and down these levels.