![]() ![]() #Fscanx license code zipcalcPhysical ( end ) for moveable_node, start, end in zip ( moveable_nodes, starts, ends ): _start_positions, _end_positions = _calculate_positions ( moveable_node, start, end ) start_positions = _start_positions end_positions = _end_positions else : start_positions = end_positions = return start_positions, end_positions List order is important and preserved.''' start_positions = end_positions = if isinstance ( moveable_node, BranchNode ): pseudo_node = moveable_node moveable = pseudo_node. :param start: (float) starting position of the moveable :param end: (float) ending position of the moveable :return: (list) a list of tuples comprising starting and ending positions. Can be a BranchNode representing a PseudoMotor, or a LeafNode representing a PhysicalMotor). :param moveable_node: (BaseNode) node representing a moveable. False otherwise """ if repr = UNCONSTRAINED : return lambda x1, x2 : True else : return lambda : None # TODO: remove starts def _calculate_positions ( moveable_node, start, end ): '''Function to calculate starting and ending positions on the physical motors level. In any case, the return from it should be a callable of the form: f(x1,x2) where x1, x2 are points in the moveable space and the return value of f is True if the movement from x1 to x2 is allowed. Ideas: repr could be an URL for a file where the function is contained, or be evaluable code, or a pickled function object. ContinuousSwMode ContinuousMode = 'c' ContinuousHwTimeMode = 'ct' HybridMode = 'h' def getCallable ( repr ): """ returns a function. MoveableDesc, CSScan, TScan from import MotionPath from import BranchNode UNCONSTRAINED = "unconstrained" StepMode = 's' # TODO: change it to be more verbose e.g. """ _all_ = _docformat_ = 'restructuredtext' import os import copy import datetime import numpy from import SafeEvaluator from import UnknownEnv from import Hookable, Macro, Type, Table, List from import SScan, CTScan, HScan, \ # """ Macro library containning scan macros for the macros server Tango device server as part of the Sardana project. # You should have received a copy of the GNU Lesser General Public License # along with Sardana. See the # GNU Lesser General Public License for more details. # Sardana is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. #Fscanx license code software# This file is part of Sardana # Copyright 2011 CELLS / ALBA Synchrotron, Bellaterra, Spain # Sardana is free software: you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |