##// END OF EJS Templates
Added appdata for gnome-software visibility.
Jeandet Alexis -
r67:b3ebdaaf24d5 default
parent child
Show More
@@ -0,0 +1,10
1 class SocExplorerRegister:
2 plugin=0
3 address=0
4 def __init__(self, plugin,address):
5 self.plugin = plugin
6 self.address = address
7 def value(self):
8 return self.plugin.Read(self.address,1)[0]
9 def set(self, value):
10 return self.plugin.Write(self.address,[value])
@@ -0,0 +1,27
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Copyright 2014 Alexis Jeandet <alexis.jeandet@member.fsf.org> -->
3 <application>
4 <id type="desktop">SocExplorer.desktop</id>
5 <metadata_license>CC0-1.0</metadata_license>
6 <project_license>GPL-2.0</project_license>
7 <name>SocExplorer</name>
8 <summary>SocExplorer is an open source generic System On Chip testing software/framework.</summary>
9 <description>
10 <p>
11 SocExplorer is an open source generic System On Chip testing software/framework.
12 We write this software for the development and the validation of our instrument,
13 the Low Frequency Receiver(LFR) for the Solar Orbiter mission. This instrument is
14 based on an actel FPGA hosting a LEON3FT processor and some peripherals. To
15 make it more collaborative, we use a plugin based system, the main executable is
16 SocExplorer then all the functionality are provided by plugins. Like this
17 everybody can provide his set of plugins to handle a new SOC or just a new
18 peripheral. SocExplorer uses PythonQt to allow user to automate some tasks such
19 as loading some plugins, configuring them and talking with his device.
20 </p>
21 </description>
22 <screenshots>
23 <screenshot type="default" width="800" height="600">https://hephaistos.lpp.polytechnique.fr/redmine/attachments/download/384/SocExplorer_ScreenShot1.png</screenshot>
24 </screenshots>
25 <url type="homepage">http://www.gnome.org/projects/en_US/gnome-power-manager</url>
26 <updatecontact>alexis.jeandet@member.fsf.org</updatecontact>
27 </application>
@@ -1,89 +1,91
1 1 #-------------------------------------------------
2 2 #
3 3 # Project created by QtCreator 2011-09-19T22:52:10
4 4 #
5 5 #-------------------------------------------------
6 6
7 7 TEMPLATE = subdirs
8 8 CONFIG += ordered release
9 9
10 10 SUBDIRS = \
11 11 src/common \
12 12 src/SocExplorerEngine \
13 13 src \
14 14 src/SocExplorer_TCP_Terminal
15 15
16 16
17 17 socexplorercfg.path = $$[QT_INSTALL_PREFIX]/mkspecs/features
18 18 socexplorercfg.files = \
19 19 src/SocExplorerEngine/plugins/socexplorerplugin.prf
20 20
21 21
22 22 unix{
23 SocExplorer.path = /usr/share/applications/
24 SocExplorer.files = unixcfg/SocExplorer.desktop
23 SocExplorerLauncher.path = /usr/share/applications/
24 SocExplorerLauncher.files = unixcfg/SocExplorer.desktop
25 SocExplorerAppData.path = /usr/share/appdata/
26 SocExplorerAppData.files = unixcfg/SocExplorer.appdata.xml
25 27 PluginConfPath.path = /etc/SocExplorer/plugin.conf.d/
26 28 PluginConfPath.files = unixcfg/plugins.conf
27 29 share.path = /usr/share/SocExplorer
28 30 share.files = ressources/images/Indiana_Jones_cappello.png \
29 31 ressources/Grlib.xml
30 32 Wizard.path = /usr/share/qtcreator/templates/wizards/SocExplorerPlugin
31 33 Wizard.files = Qt_Creator_Wizard/SocExplorerPlugin/logo-lpp-cutted.png \
32 34 Qt_Creator_Wizard/SocExplorerPlugin/plugin.cpp \
33 35 Qt_Creator_Wizard/SocExplorerPlugin/plugin.h \
34 36 Qt_Creator_Wizard/SocExplorerPlugin/project.pro \
35 37 Qt_Creator_Wizard/SocExplorerPlugin/wizard.xml
36 INSTALLS+=Wizard SocExplorer share PluginConfPath
38 INSTALLS+=Wizard SocExplorerLauncher share PluginConfPath SocExplorerAppData
37 39 }
38 40 INSTALLS+=socexplorercfg
39 41
40 42
41 43
42 44
43 45
44 46
45 47
46 48
47 49
48 50
49 51
50 52
51 53
52 54
53 55
54 56
55 57
56 58
57 59
58 60
59 61
60 62
61 63
62 64
63 65
64 66
65 67
66 68
67 69
68 70
69 71
70 72
71 73
72 74
73 75
74 76
75 77
76 78
77 79
78 80
79 81
80 82
81 83
82 84
83 85
84 86
85 87
86 88
87 89
88 90
89 91
@@ -1,107 +1,82
1 1 /*------------------------------------------------------------------------------
2 2 -- This file is a part of the SocExplorer Software
3 3 -- Copyright (C) 2013, Plasma Physics Laboratory - CNRS
4 4 --
5 5 -- This program is free software; you can redistribute it and/or modify
6 6 -- it under the terms of the GNU General Public License as published by
7 7 -- the Free Software Foundation; either version 2 of the License, or
8 8 -- (at your option) any later version.
9 9 --
10 10 -- This program is distributed in the hope that it will be useful,
11 11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 13 -- GNU General Public License for more details.
14 14 --
15 15 -- You should have received a copy of the GNU General Public License
16 16 -- along with this program; if not, write to the Free Software
17 17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 18 -------------------------------------------------------------------------------*/
19 19 /*-- Author : Alexis Jeandet
20 20 -- Mail : alexis.jeandet@lpp.polytechnique.fr
21 21 ----------------------------------------------------------------------------*/
22 22 #ifndef REGISTERDATA_H
23 23 #define REGISTERDATA_H
24 24 #include <QString>
25 25 #include <QList>
26 26 #include <QObject>
27 27
28 //class ucBitfield: public QObject
29 //{
30 // Q_OBJECT
31 //public:
32 // explicit ucBitfield(QObject* parent =0);
33 // explicit ucBitfield(const QString& name,int offset,const QString& description,QObject* parent =0);
34 // QString name();
35 // int offset();
36 // QString description();
37 //public slots:
38 // void setName(const QString& name);
39 // void setOffset(int offset);
40 // void setDescription(const QString& description);
41
42 //signals:
43 // void nameChanged(const QString& name);
44 // void offsetChanged(int offset);
45 // void descriptionChanged(const QString& description);
46 //private:
47
48 // QString p_name;
49 // int p_offset;
50 // QString p_description;
51 //};
52
53 28 class ucRegister :public QObject
54 29 {
55 30 Q_OBJECT
56 31 public:
57 32 ucRegister(QObject* parent=0);
58 33 quint32 value();
59 34 public slots:
60 35 void setName(const QString& name);
61 36 void setValue(quint32 value);
62 37 void setOffset(qint64 offset);
63 38 signals:
64 39 void nameChanged(const QString& name);
65 40 void offsetChanged(qint64 offset);
66 41 void valueChanged(quint32 value);
67 42 private:
68 43 QString p_name;
69 44 qint64 p_addressOffset;
70 45 quint32 p_value;
71 46 };
72 47
73 48 class ucPeripheral: public QObject,public QList<ucRegister*>
74 49 {
75 50 Q_OBJECT
76 51 public:
77 52 ucPeripheral(QObject* parent=0);
78 53 private:
79 54 QString p_name;
80 55 qint64 p_baseAddress;
81 56 };
82 57
83 58
84 59
85 60 class ucSystemOnChip : public QObject,public QList<ucPeripheral*>
86 61 {
87 62 Q_OBJECT
88 63 public:
89 64 ucSystemOnChip(QObject* parent=0);
90 65 public slots:
91 66 void setName(const QString& name);
92 67 signals:
93 68 void nameChanged(const QString& name);
94 69 private:
95 70 QString p_name;
96 71 };
97 72
98 73
99 74
100 75 #endif // REGISTERDATA_H
101 76
102 77
103 78
104 79
105 80
106 81
107 82
@@ -1,116 +1,113
1 1 /*------------------------------------------------------------------------------
2 2 -- This file is a part of the SocExplorer Software
3 3 -- Copyright (C) 2013, Plasma Physics Laboratory - CNRS
4 4 --
5 5 -- This program is free software; you can redistribute it and/or modify
6 6 -- it under the terms of the GNU General Public License as published by
7 7 -- the Free Software Foundation; either version 2 of the License, or
8 8 -- (at your option) any later version.
9 9 --
10 10 -- This program is distributed in the hope that it will be useful,
11 11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 13 -- GNU General Public License for more details.
14 14 --
15 15 -- You should have received a copy of the GNU General Public License
16 16 -- along with this program; if not, write to the Free Software
17 17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 18 -------------------------------------------------------------------------------*/
19 19 /*-- Author : Alexis Jeandet
20 20 -- Mail : alexis.jeandet@lpp.polytechnique.fr
21 21 ----------------------------------------------------------------------------*/
22 22
23 23 #ifndef REGISTERSMODEL_H
24 24 #define REGISTERSMODEL_H
25 25 #include <QString>
26 26 #include <QList>
27 27 #include <QObject>
28 28 #include <QDomDocument>
29 29 #include <QDomElement>
30 30 #include "registerdata.h"
31 31 #include <socclk.h>
32 32 #include <socexplorerplugin.h>
33 //#include <socexplorerenumdevice.h>
34 33 class socExplorerEnumDevice;
35 34
36 35 class registerBitFieldModel
37 36 {
38 37 public:
39 38 registerBitFieldModel(const QString& name,const QString& description,
40 39 int size, int offset, bool rw)
41 40 {
42 41 this->name = name;
43 42 this->description = description;
44 43 this->size = size;
45 44 this->offset = offset;
46 45 this->rw = rw;
47 46 }
48 47 QString name;
49 48 QString description;
50 49 int size;
51 50 int offset;
52 51 bool rw;
53 52 };
54 53
55 54 class registerModel
56 55 {
57 56 public:
58 57 registerModel(const QString& name,qint32 offset)
59 58 {
60 59 this->name = name;
61 60 this->offset = offset;
62 61 }
63 62 QString name;
64 63 qint32 offset;
65 64 QList<registerBitFieldModel> bitfields;
66 65 };
67 66
68 67 class peripheralModel
69 68 {
70 69 public:
71 70 peripheralModel(const QString& name)
72 71 {
73 72 this->name = name;
74 73 }
75 74 QString name;
76 75 QList<registerModel> registers;
77 76 };
78 77
79 78
80 79 class SOCEXPLORER_EXPORT SOCModel :public QObject
81 80 {
82 81 Q_OBJECT
83 82 public:
84 83 SOCModel(socexplorerplugin* rootDev,QObject* parent=0);
85 // qint32 getRegValue(qint32 baseAddress);
86 84 bool isRootDev(socexplorerplugin* rootDev)
87 85 {
88 86 return rootDev==p_rootDev;
89 87 }
90 88 bool enumDeviceExists(qint32 baseAddress);
91 89 socExplorerEnumDevice *getEnumDevice(qint32 baseAddress);
92 90 public slots:
93 //void setRegValue(qint32 baseAddress,qint32 value);
94 91 qint32 getEnumDeviceBaseAddress(int VID,int PID,int count=0);
95 92 qint32 getEnumDeviceCount(int VID,int PID);
96 93 socExplorerEnumDevice* addEnumDevice(int VID, int PID, qint32 baseAddress, const QString& name);
97 94 int addEnumDevice(socExplorerEnumDevice* device);
98 95 void writeReg(qint32 address,qint32 value);
99 96 qint32 readReg(qint32 address);
100 97 private:
101 98 socexplorerplugin* p_rootDev;
102 99 QList<socExplorerEnumDevice*> p_enumeratedDevices;
103 100 QList<SOCclk*> clktree;
104 101 };
105 102
106 103
107 104
108 105
109 106 #endif // REGISTERSMODEL_H
110 107
111 108
112 109
113 110
114 111
115 112
116 113
@@ -1,138 +1,137
1 1 /*------------------------------------------------------------------------------
2 2 -- This file is a part of the SocExplorer Software
3 3 -- Copyright (C) 2012, Plasma Physics Laboratory - CNRS
4 4 --
5 5 -- This program is free software; you can redistribute it and/or modify
6 6 -- it under the terms of the GNU General Public License as published by
7 7 -- the Free Software Foundation; either version 2 of the License, or
8 8 -- (at your option) any later version.
9 9 --
10 10 -- This program is distributed in the hope that it will be useful,
11 11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 13 -- GNU General Public License for more details.
14 14 --
15 15 -- You should have received a copy of the GNU General Public License
16 16 -- along with this program; if not, write to the Free Software
17 17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 18 -------------------------------------------------------------------------------*/
19 19 /*-- Author : Alexis Jeandet
20 20 -- Mail : alexis.jeandet@lpp.polytechnique.fr
21 21 ----------------------------------------------------------------------------*/
22 22 #ifndef SOCEXPLORERENGINE_H
23 23 #define SOCEXPLORERENGINE_H
24 24
25 25 #include <stdint.h>
26 26 #include <QObject>
27 27 #include <QtWidgets>
28 28 #include <QStringList>
29 29 #include <QDomDocument>
30 30 #include <QDomElement>
31 31 #include <QDomNodeList>
32 32 #include <QFile>
33 33 #include <QTextStream>
34 34 #include <QDir>
35 35 #include <QApplication>
36 36 #include <QtCore/qglobal.h>
37 37 #include <QFileDialog>
38 38 #include <socexplorerxmlfile.h>
39 39 #include <socexplorerenumdevice.h>
40 40 #include <XMLmodel.h>
41 41 #include <peripheralwidget.h>
42 42 #include <registerwidget.h>
43 43 #include <socmodel.h>
44 44
45 45 #if defined(SOCEXPLORER_SDK_BUILD)
46 46 # define SOCEXPLORER_SDK_EXPORT Q_DECL_EXPORT
47 47 #else
48 48 # define SOCEXPLORER_SDK_EXPORT Q_DECL_IMPORT
49 49 #endif
50 50
51 51
52 52 class SOCEXPLORER_SDK_EXPORT SocExplorerAutoProgressBar
53 53 {
54 54 public:
55 55 SocExplorerAutoProgressBar(QProgressBar* progressBar=NULL)
56 56 {
57 57 this->p_progressbar=progressBar;
58 58 }
59 59 ~SocExplorerAutoProgressBar()
60 60 {
61 61 if(p_progressbar)
62 62 {
63 63 delete p_progressbar;
64 64 }
65 65 }
66 66 void setProgressBar(QProgressBar* progressBar)
67 67 {
68 68 this->p_progressbar=progressBar;
69 69 }
70 70 void setValue(int value)
71 71 {
72 72 p_progressbar->setValue(value);
73 73 }
74 74 private:
75 75 QProgressBar* p_progressbar;
76 76 };
77 77
78 78 //! SocExplorerEngine is a pure static class which aims to provide services for both SocExplorer software and plugins.
79 79
80 80 class SOCEXPLORER_SDK_EXPORT SocExplorerEngine : public QObject
81 81 {
82 82 Q_OBJECT
83 83 private:
84 84 static SocExplorerEngine* _self;
85 85 SocExplorerEngine(QObject *parent = 0);
86 86 static void init();
87 87
88 88 public:
89 89 static SocExplorerEngine* self(){ if(!_self){_self= new SocExplorerEngine;}return _self;}
90 90 //! Return the configuration folder path, OS dependant.
91 91 SOCEXPLORER_SDK_EXPORT static QString configFolder();
92 92 //! Return the default plugin folder path, OS dependant.
93 //static QString pluginFolder(){return QString(SOCEXPLORER_PLUGINS_INSTALL_PATH);}
94 93 static QStringList pluginFolders();
95 94 static QString configPath(){return QString(SOCEXPLORER_CONFIG_PATH);}
96 95 static QString sharePath(){return QString(SOCEXPLORER_SHARE_PATH);}
97 96 static int addEnumDevice(socexplorerplugin* rootPlugin,int VID,int PID,qint32 baseAddress,const QString& name);
98 97 static QList<SOCModel*>* getSOCs();
99 98 static QString getDevName(int VID, int PID);
100 99 static QString SocExplorerVersion();
101 100 static QString SocExplorerChangeset();
102 101 static QString SocExplorerBranch();
103 102 static socExplorerXmlModel* xmlModel();
104 103 static void setMainWindow(QMainWindow* Mainwindow);
105 104 static QProgressBar* getProgressBar(const QString &format, int max);
106 105 static void deleteProgressBar(QProgressBar* progressBar);
107 106 static void addSOC(socexplorerplugin* rootPlugin);
108 107 static void removeSOC(socexplorerplugin* rootPlugin);
109 108 static void message(socexplorerplugin* sender,const QString& message,int debugLevel=0);
110 109 static void setLogLevel(int level);
111 110 signals:
112 111 void enumDeviceAdded(socExplorerEnumDevice* device);
113 112 public slots:
114 113 QString getSocExplorerVersion(){return SocExplorerEngine::SocExplorerVersion();}
115 114 QString getSocExplorerChangeset(){return SocExplorerEngine::SocExplorerChangeset();}
116 115 QString getSocExplorerBranch(){return SocExplorerEngine::SocExplorerBranch();}
117 116 qint32 getEnumDeviceBaseAddress(const QString& rootPlugin,int VID,int PID,int count=0);
118 117 qint32 getEnumDeviceBaseAddress(socexplorerplugin* plugin,int VID,int PID,int count=0);
119 118 qint32 getEnumDeviceCount(socexplorerplugin* plugin,int VID,int PID);
120 119 qint32 getEnumDeviceCount(const QString& rootPlugin,int VID,int PID);
121 120 int addEnumDevice(const QString& rootPlugin,int VID,int PID,qint32 baseAddress,const QString& name);
122 121
123 122 private:
124 123 static SOCModel* plugin2Soc(socexplorerplugin* plugin);
125 124 static socExplorerXmlModel* p_xmlmodel;
126 125 static QMainWindow* mainWindow;
127 126 static QList<SOCModel*>* SOCs;
128 127 static int loglvl;
129 128 };
130 129
131 130 #endif // SOCEXPLORERENGINE_H
132 131
133 132
134 133
135 134
136 135
137 136
138 137
General Comments 0
You need to be logged in to leave comments. Login now