Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • nxtomomill nxtomomill
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 23
    • Issues 23
    • List
    • Boards
    • Service Desk
    • Milestones
  • Jira
    • Jira
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • tomotools
  • nxtomomillnxtomomill
  • Merge requests
  • !19

Add plugins

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged payno requested to merge fix_4 into master Jun 25, 2020
  • Overview 0
  • Commits 2
  • Pipelines 7
  • Changes 3

TODO

  • Add a plugin system to let the user define some output in the final hdf5 file
  • Add documentation

HOW TO

The user define a folder containing the python plugin. Environment variable to set: NXTOMOMILL_PLUGINS_DIR Then nxtomomill parse all the classes contained and check if they are instance of '_PluginBase'

Then for conveniance (we parse the file only one time) the user should specify the key he will use. for now we only manage keys from positioners. Can be extended if necessary later. And then he can access those from 'get_positioner_info' and do basically what he likes during write. Limited but enough for a first version I guess.

You can see here an example of a plugin file:

limitation

  • this let the user pretty 'free'. Maybe we could add an extra layer and force them to define unit ?
  • for now consider all the information the user can need are store in the positioners info.
  • will generate warnings if missing keys even if the user create itself the requested output (can be managed by requesting user the path they intent to create).

EXTRA

close #4 (closed)

Edited Jun 25, 2020 by payno
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: fix_4