Skip to content

Commit 9cd5e79

Browse files
committed
Structure iocs
1 parent 904868f commit 9cd5e79

File tree

82 files changed

+376
-377
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+376
-377
lines changed

doc/Deployment.md

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
# Releases
1+
# Releases & Deployment
2+
3+
## Releases
24

35
```{toctree}
46
:glob:
@@ -8,9 +10,9 @@ deployment/Creating-a-release
810
deployment/Manual-system-tests
911
```
1012

11-
# Deployment
13+
## Deployment
1214

13-
## IBEX
15+
### IBEX
1416

1517
```{toctree}
1618
:glob:
@@ -25,7 +27,7 @@ deployment/Reviewing-Deploy-Tickets
2527
deployment/Deploy-script-workflow
2628
```
2729

28-
## Supporting software
30+
### Supporting software
2931

3032
```{toctree}
3133
:glob:
@@ -37,7 +39,7 @@ deployment/Upgrade-Java
3739
deployment/Upgrade-ISISICP
3840
```
3941

40-
# Patching
42+
## Patching
4143

4244
```{toctree}
4345
:glob:
@@ -49,11 +51,21 @@ deployment/Release-Single-IOC
4951
deployment/Modifying-Plugins-on-a-Deployed-Client
5052
```
5153

52-
# VHD Build & Deployments
54+
## VHD Build & Deployments
5355

5456
```{toctree}
5557
:glob:
5658
:titlesonly:
5759
5860
deployment/Mount-or-create-IBEX-VHDs
5961
```
62+
63+
## Containers
64+
65+
```{toctree}
66+
:glob:
67+
:titlesonly:
68+
69+
deployment/Containerising-an-IOC
70+
deployment/Containerising-the-Archiver-Appliance
71+
```

doc/Gui.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,27 @@ client/System-Testing-with-Squish
4141
client/Test-naming
4242
```
4343

44-
# Web Dashboard
44+
## Eclipse
45+
46+
```{toctree}
47+
:glob:
48+
:titlesonly:
49+
50+
client/Common-Eclipse-Tasks
51+
client/Common-Eclipse-Issues
52+
client/Creating-the-IBEX-Developer-Version-of-Eclipse
53+
client/Eclipse-RCP
54+
client/Eclipse-logging
55+
client/Eclipse-preferences
56+
client/Checkstyle-setup
57+
client/Dictionary-setup
58+
```
59+
60+
## CS-Studio in the GUI
61+
62+
```{toctree}
63+
:glob:
64+
:titlesonly:
65+
66+
client/GUI-CSS
67+
```

doc/IOCs.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Devices & IOCs
2+
3+
These are the list of categories for an IOC. The IOC can appear in multiple categories if it is relevant. There are details relating to specific device IOCs listed from within the categories where applicable. Most IOC control a device which has [manuals](Manuals).
4+
5+
```{toctree}
6+
:glob:
7+
:titlesonly:
8+
:maxdepth: 1
9+
10+
iocs/Cells
11+
iocs/Choppers
12+
iocs/Cryogenics
13+
iocs/Daq
14+
iocs/Gas-And-Liquid-Handling-Systems
15+
iocs/Imaging-Cameras
16+
iocs/Jaws-and-slits
17+
iocs/Loading-Rigs
18+
iocs/Magnets
19+
iocs/Fluxgates
20+
iocs/Motor-IOCs
21+
iocs/Miscellaneous-Motion-Control
22+
iocs/Multimeters
23+
iocs/PLCs
24+
iocs/Polarisers-and-Analysers
25+
iocs/Power-Distribution-Units
26+
iocs/Power-Supplies
27+
iocs/Pressure-Monitors
28+
iocs/Rheometers
29+
iocs/Sample-Changers
30+
iocs/Sensors
31+
iocs/Signal-Generators
32+
iocs/Temperature-Controllers
33+
iocs/Water-Baths
34+
iocs/Other
35+
iocs/Partially-Supported-Devices
36+
```

doc/Instrument-Details.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
# Instrument Details
1+
# Instrument Migration Notes
22

3+
```{warning}
34
These instrument details pages provide historical context about the devices on a specific instrument,
4-
at the time they were migrated to IBEX.
5+
at the time they were migrated to IBEX. **These pages may not be up to date with the latest instrument
6+
configuration.**
7+
```
58

69
```{toctree} Instrument Details
710
:glob:

doc/Python.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Python

doc/Server.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# IBEX Server

doc/Web.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Web
2+
3+
```{toctree}
4+
:glob:
5+
:titlesonly:
6+
7+
webdashboard/Web-Dashboard
8+
webdashboard/PVWS
9+
```

doc/_static/css/custom.css

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
.wy-table-responsive table td, .wy-table-responsive table th {
2+
white-space: inherit;
3+
}
4+
5+
a:hover {
6+
color: #01afec;
7+
}
8+
9+
.wy-menu-vertical p.caption {
10+
color: #01afec;
11+
}
12+
.wy-nav-content {
13+
max-width: 1200px !important;
14+
}

doc/uncategorised/Checkstyle-setup.md renamed to doc/client/Checkstyle-setup.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > [Check Style setup](Checkstyle-setup)
1+
# Checkstyle setup
22

33
Check style is set up by:
44

doc/client/Common-Eclipse-Issues.md

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,38 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > Common Eclipse issues
1+
# Common Eclipse issues
22

33
Sometimes the error messages that Eclipse gives are a little opaque, so here are some possible solutions for some of the more common issues.
44

5-
### plugin execution not covered by lifecycle configuration
5+
## Plugin execution not covered by lifecycle configuration
66

77
Go to window -> preferences -> Maven -> Errors/Warnings. Change "Plugin execution not covered by lifecycle configuration" to ignore in the drop down.
88

9-
### The type XXXXXXX cannot be resolved. It is indirectly referenced from required .class files ###
9+
## The type XXXXXXX cannot be resolved. It is indirectly referenced from required .class files
1010

11-
#### Errors appear for single plugin
11+
### Errors appear for single plugin
1212
Possible solutions (in order of desperation):
1313

1414
* Check the error message: you may need to add a dependency to the plugin that contains XXXXXXX. For example: if the error message is ```The type org.eclipse.ui.plugin.AbstractUIPlugin cannot be resolved. It is indirectly referenced from required .class files``` then the org.eclipse.ui plugin requires adding.bundle to the required bundle in the manifest file of your plugin.
1515
* Delete the complaining plugin from the workspace and then re-import it.
1616
* Remove JRE System Library from the complaining plug-in's Java Build Path then re-add it.
1717
* This can also occur in similar cases to the **Invalid class hierarchy**.
1818

19-
#### Errors appear across entire project
19+
### Errors appear across entire project
2020

2121
Suggests that eclipse has got itself into a funny state. Try `Project > Clean` first, if that does not get rid of the problems, try:
2222
1. Reset the targetplatform: Open file in `uk.ac.stfc.isis.ibex.targetplatform`, reload dependencies if they are in error, then click `Reload Target Platform` top right
2323
2. Synchronize the runnable product: open `ibex.product` in `uk.ac.stfc.isis.ibex.e4.client.product`, click `Synchronize this configuration with the product's defining plug-in.`
2424
3. Confirm the problems have disappeared. (you may need to repeat step 1 & 2 a couple of times)
2525
4. Launch application from `ibex.product` (little green arrow on the top right) and confirm the client starts
2626

27-
### Invalid class hierarchy ###
27+
## Invalid class hierarchy
2828

2929
* Make sure that you don't have any circular dependencies. That is package A imports package B imports package A.
3030
* If you have several layers of derived dependencies, particularly containing CSStudio or eclipse classes, make sure the correct bundles have been imported. Dependencies are not necessarily re-exported from the intermediate layers by default. There are two solutions:
3131
* Add the base bundle to the list of dependencies of your new class via the manifest file
3232
* Go through the classes you derive from. In their bundles go to the dependencies menu and click on the plugin you're deriving from. Click properties and check the box that says "Reexport this dependency". Once the intermediate layers all reexport their dependencies then it should become available to your class.
3333

3434

35-
### Product XXXXXXXXXXX.product could not be found ###
35+
## Product XXXXXXXXXXX.product could not be found
3636

3737
Typically is followed by a lot of errors relating to bundle resolution, for example:
3838

@@ -75,21 +75,20 @@ Possible solution:
7575

7676
* Check the offending plug-in has been added to one of the feature projects as a plug-in
7777

78-
### New plugin is not available (and possibly crashing existing plugins) ###
78+
## New plugin is not available (and possibly crashing existing plugins)
7979

8080
This might be difficult to find as an error, and it may not exist for other developers - even on the same branch!
8181
Adding the plugin directly to your configuration solves this.
8282

83-
### Plugins compile fine but dependencies cause errors at runtime ###
83+
## Plugins compile fine but dependencies cause errors at runtime
8484

8585
If you can run the application fine but are seeing a `java.lang.NoClassDefFoundError` at runtime, try re-setting the target platform, synchronizing `client.product` (under "testing" in the product overview), and doing a clean.
8686

87-
### Menu items are missing ###
87+
## Menu items are missing
8888

8989
This is usually because a dependency is missing. See "I really cannot work out why the GUI won't start!" below.
9090

91-
### I really cannot work out why the GUI won't start! ###
92-
#### Also for runtime error "No application ID" ####
91+
## No application ID
9392

9493
Starting the GUI via Eclipse just doesn't seem to work and I cannot see why!
9594

@@ -111,20 +110,20 @@ Sometimes eclipse will tell you that you have errors in various projects when yo
111110
- In `uk.ac.stfc.isis.ibex.targetplatform`, open `uk.ac.stfc.isis.ibex.targetplatform.target` and click "set as target platform".
112111
- If all else fails, delete all the projects from eclipse's workspace and reimport them.
113112

114-
#### The GUI starts but looks strange and some items (e.g. menu bar, perspective buttons) are missing ####
113+
## The GUI starts but looks strange and some items (e.g. menu bar, perspective buttons) are missing
115114

116115
This can happen if the wrong ".product" file is run and not all plugins are defined in the application.
117116

118117
* Make sure you *only* run ibex.product in uk.ac.stfc.isis.ibex.**client**.product *not* any other ".product" file in the workspace e.g. uk.ac.stfc.isis.ibex.product
119118

120-
### I can't see changes in a new branch
119+
## I can't see changes in a new branch
121120

122121
Sometimes when you check out a new branch in the ibex GUI repository, you won't see any changes in the GUI. You can fix this by following the steps below:
123122

124123
1. In Eclipse, remove all the projects from the workspace and close Eclipse.
125124
1. Then, while checked out to the branch you want to see the changes on, perform a `git clean -fdx && git reset HEAD --hard` to reset the git repository. This will remove any changes you have made to the branch.
126125
1. Restart Eclipse and repeat the steps to get the GUI working from [Building the GUI](https://github.com/ISISComputingGroup/ibex_developers_manual/wiki/Building-the-GUI).
127126

128-
### Build fails with `[ERROR] Failed to resolve target definition ... targetplatform.target: Could not find "org.eclipse.e4.tools.spies.feature.feature.group..." in the repositories of the current location`
127+
## Build fails with `[ERROR] Failed to resolve target definition ... targetplatform.target: Could not find "org.eclipse.e4.tools.spies.feature.feature.group..." in the repositories of the current location`
129128

130129
This probably means that our pinned target has gone out of date and needs updating. Open the Eclipse IDE and click on `org.eclipse.tools/latest` and click `update` this should fail and show `Unable to locate installable unit ...`. To fix this remove the plugin and then add it from the `software site `, work with `org.eclipse.e4.core.tools.update - http://download.eclipse.org/e4/snapshots/org.eclipse.e4.tools/latest` then you add `Eclipse E4 - All Spies`.

doc/client/Common-Eclipse-Tasks.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > Common Eclipse tasks
1+
# Common Eclipse tasks
22

33
## Add A New Plugin
44

Lines changed: 1 addition & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,3 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > Creating the IBEX developer version of Eclipse
1+
# Creating the IBEX developer version of Eclipse
22

33
The recommended IBEX developer version of Eclipse can be found at `\\isis\inst$\Kits$\CompGroup\ICP\Developer Tools`.
4-
5-
# Old instructions (no longer in use)
6-
7-
We are no longer using these instructions as several plugins are no longer relevant to the project (for example, RCPTT) or do not support modern versions of java/eclipse (e.g. checkstyle).
8-
9-
The instructions are left here in case they are useful for a future "IBEX developer eclipse" with bundled plugins.
10-
11-
```
12-
## Download and install plugins
13-
14-
* Download the latest version of Eclipse for RCP and RAP developers from https://www.eclipse.org/downloads/, unzip somewhere appropriate and start Eclipse
15-
* Set the workspace to ../workspace (or another suitable relative path)
16-
* Modify eclipse/plugins/org.eclipse.platform_4.5.0.v20150603-2000/splash.bmp (replacing 4.5.0... with the current version number) to make clear this is the IBEX version of Eclipse
17-
* From Help -> Eclipse Marketplace install RCP Testing Tool
18-
* From Help -> Eclipse Marketplace install EclEmma
19-
* From Help -> Install New Software add a repository with the name ObjectAid UML Explorer and URL http://www.objectaid.com/update, then install ObjectAid Class Diagram only (uncheck the other 3 options)
20-
* From Help -> Eclipse Marketplace install Eclipse Checkstyle Plug-in
21-
* Configure Checkstyle, Window -> Preferences -> Checkstyle, select New, Internal Configuration then import the IBEX Checkstyle file (found in the root of base\uk.ac.stfc.isis.ibex.client.tycho.parent) NOTE - This is why we can't use EPF exports, the Checkstyle configurations get lost
22-
* Be sure to call the new Checkstyle configuration "IBEX Checks".
23-
* Set the IBEX checkstyle to be the default
24-
* From Help -> Eclipse Marketplace install Unnecessary Code Detector
25-
* Configure Unnecessary Code Detector, Window -> Preferences -> UCDetector, change the 'Active mode' to 'Unused only [built-in]'
26-
* From Help -> Eclipse Marketplace install JAutodoc
27-
* Configure JAutodoc, Window -> Preferences -> Java -> JAutodoc. Change the visibility to be public and package then add the standard IBEX header (copied from a pre-existing code)
28-
* Run an update from Help -> Check for Updates
29-
30-
Save actions
31-
------------
32-
33-
* From Window -> Preferences -> Java -> Editor -> Save Actions choose Perform the selection actions on save, then Format source code (Format edited lines), Organize imports, Additional actions
34-
* In Window -> Preferences -> Java -> Compiler -> Errors/Warning -> Annotations -> Unhandled Token in ``@SupressWarnings`` set to ignore
35-
* From Window -> Preferences -> Java -> Code Style -> Organize Imports set the 'Number of static imports' to 2
36-
37-
Formatting
38-
----------
39-
40-
There are a number of changes to the formatting. The easiest way to get the correct code formatting is to start with the most recent previous developer's edition, choose Window -> Preferences -> Java -> Code Style -> Formatter. IBEX should be active, choose to Edit then Export.
41-
42-
To recreate the formatter from scratch these are the known steps. Start by going to 'New', start with 'Java Conventions' and save the formatting as 'IBEX'. Then edit this profile.
43-
44-
* Under 'Indentation' Tab policy -> Spaces only, Tab size -> 4
45-
* Under 'Indentation' check Statements within 'case' body
46-
* Under 'Comments' uncheck 'Format line comments on first column'
47-
* Under 'Comments'' check 'Enable header comment formatting'
48-
* Under 'Comments'' uncheck 'New line after @param tags'
49-
* Under 'Line Wrapping' select 'enum declaration'. For 'Constants and ''implements' clause' set the line wrapping to 'Wrap all elements, every element on new line' and check the 'Force split' box
50-
* Under 'Line Wrapping' select 'enum declaration'. For 'Constant arguments' set the line wrapping to 'Wrap where necessary' and leave 'Force split' unchecked
51-
52-
Code templates
53-
--------------
54-
55-
In Window -> Preferences -> Java -> Code Style -> Code Templates
56-
57-
* Check 'Automatically add comments for new methods and types'
58-
* Remove all ``@author`` tags
59-
* Change 'Overriding methods' to the same comment as 'Methods'
60-
* For 'New Java files' add the licence header
61-
* 'Method body' comment becomes ``// ${body_statement}``
62-
* 'Constructor body' comment becomes ``// ${body_statement}``
63-
* 'Catch block body' comment becomes ``// ${exception_var}.printStackTrace();``
64-
65-
Finally
66-
-------
67-
68-
* From Window -> Preferences -> Maven -> Errors/Warnings choose 'Ignore' for 'Plugin execution not covered by lifecycle configuration'
69-
* From Window -> Preferences -> General -> Error Reporting set 'Send mode' to 'Never send reports'
70-
* Tidy up - check for paths tied to your own user account and either remove the offending line or delete the file
71-
* Zip up both the workspace and the eclipse folder, to get all plugins and settings
72-
73-
```

doc/uncategorised/Dictionary-setup.md renamed to doc/client/Dictionary-setup.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > [Dictionary setup](Dictionary-setup)
1+
# Dictionary setup
22

33
Spelling error highlights fix
44

doc/client/Eclipse-RCP.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > Eclipse RCP
1+
# Eclipse RCP
22

33
We have two books which should serve as a reasonable introduction to the Eclipse RCP platform: 'Eclipse Rich Client Platform' by McAffer, Lemieux and Aniszczyk, and 'Eclipse 4 Application Development' by Vogel. Most of the contents of the latter book can be found on the Vogella website along with a large number of additional Eclipse RCP and JFace tutorials.
44

doc/client/Eclipse-logging.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > Eclipse logging
2-
3-
# Logging in the IBEX GUI (Eclipse Client)
1+
# Eclipse logging
42

53
## Log4j
64
We are using the [log4j2](http://logging.apache.org/log4j/2.x/manual/index.html) framework for our logging.

doc/client/Eclipse-preferences.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
> [Wiki](Home) > [The GUI](The-GUI) > [Eclipse](GUI-Eclipse) > Eclipse preferences
1+
# Eclipse preferences
22

33
There are two sorts of settings.
44

0 commit comments

Comments
 (0)