Source code for secsgem.secs.functions.s02f41

#####################################################################
# s02f41.py
#
# (c) Copyright 2021, Benjamin Parzella. All rights reserved.
#
# This library 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 2.1 of the License, or (at your option) any later version.
#
# This software 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.  See the
# GNU Lesser General Public License for more details.
#####################################################################
"""Class for stream 02 function 41."""

from secsgem.secs.functions.base import SecsStreamFunction
from secsgem.secs.data_items import RCMD
from secsgem.secs.data_items import CPNAME
from secsgem.secs.data_items import CPVAL


[docs]class SecsS02F41(SecsStreamFunction): """ host command - send. **Data Items** - :class:`RCMD <secsgem.secs.data_items.RCMD>` - :class:`CPNAME <secsgem.secs.data_items.CPNAME>` - :class:`CPVAL <secsgem.secs.data_items.CPVAL>` **Structure**:: >>> import secsgem.secs >>> secsgem.secs.functions.SecsS02F41 { RCMD: U1/I1/A PARAMS: [ { CPNAME: U1/U2/U4/U8/I1/I2/I4/I8/A CPVAL: BOOLEAN/U1/U2/U4/U8/I1/I2/I4/I8/A/B } ... ] } **Example**:: >>> import secsgem.secs >>> secsgem.secs.functions.SecsS02F41({"RCMD": "COMMAND", "PARAMS": [{"CPNAME": "PARAM1", "CPVAL": "VAL1"}, ... {"CPNAME": "PARAM2", "CPVAL": "VAL2"}]}) S2F41 W <L [2] <A "COMMAND"> <L [2] <L [2] <A "PARAM1"> <A "VAL1"> > <L [2] <A "PARAM2"> <A "VAL2"> > > > . :param value: parameters for this function (see example) :type value: dict """ _stream = 2 _function = 41 _data_format = [ RCMD, [ [ "PARAMS", CPNAME, CPVAL ] ] ] _to_host = False _to_equipment = True _has_reply = True _is_reply_required = True _is_multi_block = False