Skip to content
Snippets Groups Projects
Commit 122ebf68 authored by Xavier ELATTAOUI's avatar Xavier ELATTAOUI
Browse files

PROBLEM-2638: refactoring done

parent 90d59ab7
Branches
Tags release_1_4_0
No related merge requests found
......@@ -3,7 +3,7 @@ from conan import ConanFile
class GpibPrologixRecipe(ConanFile):
name = "gpibprologix"
executable = "ds_GpibPrologix"
version = "1.3.1"
version = "1.4.0"
package_type = "application"
user = "soleil"
python_requires = "base/[>=1.0]@soleil/stable"
......@@ -20,6 +20,7 @@ class GpibPrologixRecipe(ConanFile):
exports_sources = "CMakeLists.txt", "src/*"
def requirements(self):
self.requires("yat/[>=1.0]@soleil/stable")
self.requires("yat4tango/[>=1.0]@soleil/stable")
if self.settings.os == "Linux":
self.requires("crashreporting2/[>=1.0]@soleil/stable")
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title> GpibPrologix Tango Class Attribute comError </title>
</head>
<body text="Black" bgcolor="White" link="Blue" vlink="Purple" alink="Red">
<br><br><br>
<font size="+1"><u><b> Attribute comError : </b></u></font>
<ul>
total amount of communication errors since device start up
</ul>
<br><br><br>
<Table Border=0 Cellpadding=0 CELLSPACING=20>
<TR>
<TD ALIGN="left" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Definition </b></font></center></td>
</tr>
<tr>
<td> Attribute Type </td>
<td> Scalar </td>
</tr>
<tr>
<td> R/W Type </td>
<td> READ </td>
</tr>
<tr>
<td> Data Type </td>
<td> Tango::DEV_USHORT </td>
</tr>
<tr>
<td> Display Level </td>
<td> OPERATOR </td>
</tr>
<tr>
<td> Inherited </td>
<td> false </td>
</tr>
<tr>
<td> Abstract </td>
<td> false </td>
</tr>
<tr>
<td> Polling Period </td>
<td> Not polled </td>
</tr>
<tr>
<td> Memorized </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Read allowed for </td>
<td> All states </td>
</tr>
</table>
</td>
<TD ALIGN="Center" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Properties </b></font></center></td>
</tr>
<tr>
<td> label </td>
<td> com error </td>
</tr>
<tr>
<td> unit </td>
<td> </td>
</tr>
<tr>
<td> standard unit </td>
<td> </td>
</tr>
<tr>
<td> display unit </td>
<td> </td>
</tr>
<tr>
<td> format </td>
<td> %d </td>
</tr>
<tr>
<td> max_value </td>
<td> </td>
</tr>
<tr>
<td> min_value </td>
<td> </td>
</tr>
<tr>
<td> max_alarm </td>
<td> </td>
</tr>
<tr>
<td> min_alarm </td>
<td> </td>
</tr>
<tr>
<td> max_warning </td>
<td> </td>
</tr>
<tr>
<td> min_warning </td>
<td> </td>
</tr>
<tr>
<td> delta_time </td>
<td> </td>
</tr>
<tr>
<td> delta_val </td>
<td> </td>
</tr>
</table>
</td>
<TD ALIGN="Right" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Event Criteria </b></font></center></td>
</tr>
<tr>
<td> Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Archive Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Push Change event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push Archive event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push DataReady event by user code </td>
<td> false </td>
</tr>
</table>
</td>
</TR>
</table>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title> GpibPrologix Tango Class Attribute consecutivesComError </title>
</head>
<body text="Black" bgcolor="White" link="Blue" vlink="Purple" alink="Red">
<br><br><br>
<font size="+1"><u><b> Attribute consecutivesComError : </b></u></font>
<ul>
Consecutives communication errors
</ul>
<br><br><br>
<Table Border=0 Cellpadding=0 CELLSPACING=20>
<TR>
<TD ALIGN="left" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Definition </b></font></center></td>
</tr>
<tr>
<td> Attribute Type </td>
<td> Scalar </td>
</tr>
<tr>
<td> R/W Type </td>
<td> READ </td>
</tr>
<tr>
<td> Data Type </td>
<td> Tango::DEV_USHORT </td>
</tr>
<tr>
<td> Display Level </td>
<td> OPERATOR </td>
</tr>
<tr>
<td> Inherited </td>
<td> false </td>
</tr>
<tr>
<td> Abstract </td>
<td> false </td>
</tr>
<tr>
<td> Polling Period </td>
<td> Not polled </td>
</tr>
<tr>
<td> Memorized </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Read allowed for </td>
<td> All states </td>
</tr>
</table>
</td>
<TD ALIGN="Center" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Properties </b></font></center></td>
</tr>
<tr>
<td> label </td>
<td> consecutives errors </td>
</tr>
<tr>
<td> unit </td>
<td> </td>
</tr>
<tr>
<td> standard unit </td>
<td> </td>
</tr>
<tr>
<td> display unit </td>
<td> </td>
</tr>
<tr>
<td> format </td>
<td> %d </td>
</tr>
<tr>
<td> max_value </td>
<td> </td>
</tr>
<tr>
<td> min_value </td>
<td> </td>
</tr>
<tr>
<td> max_alarm </td>
<td> </td>
</tr>
<tr>
<td> min_alarm </td>
<td> </td>
</tr>
<tr>
<td> max_warning </td>
<td> </td>
</tr>
<tr>
<td> min_warning </td>
<td> </td>
</tr>
<tr>
<td> delta_time </td>
<td> </td>
</tr>
<tr>
<td> delta_val </td>
<td> </td>
</tr>
</table>
</td>
<TD ALIGN="Right" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Event Criteria </b></font></center></td>
</tr>
<tr>
<td> Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Archive Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Push Change event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push Archive event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push DataReady event by user code </td>
<td> false </td>
</tr>
</table>
</td>
</TR>
</table>
</body>
</html>
......@@ -5,7 +5,40 @@
</head>
<body text="Black" bgcolor="White" link="Blue" vlink="Purple" alink="Red">
<br><br><br><br>
<font size="+1"><u><b> There is no attribute defined. </b></u></font>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=8> <font size=+1> <center><b> GpibPrologix Class Attributes </b></font></center></td>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td> <center><b> Name </b></center> </td>
<td> <center><b> Inherited </b></center> </td>
<td> <center><b> Abstract </b></center> </td>
<td> <center><b> Attr. type </b></center> </td>
<td> <center><b> R/W type </b></center> </td>
<td> <center><b> Data type </b></center> </td>
<td> <center><b> Level </b></center> </td>
<td> <center><b> Description </b></center> </td>
</tr>
<tr>
<td> <a href="AttrcomError.html"> comError </a> </td>
<td> false </td>
<td> false </td>
<td> Scalar </td>
<td> READ </td>
<td> Tango::DEV_USHORT </td>
<td> OPERATOR </td>
<td> total amount of communication errors since device start up </td>
</tr>
<tr>
<td> <a href="AttrconsecutivesComError.html"> consecutivesComError </a> </td>
<td> false </td>
<td> false </td>
<td> Scalar </td>
<td> READ </td>
<td> Tango::DEV_USHORT </td>
<td> OPERATOR </td>
<td> Consecutives communication errors </td>
</tr>
</table>
<br><br>
<hr>
<br><br>
......
......@@ -27,6 +27,8 @@
</ul>
<li> <a href="FullDocument.html#attributes"> Attributes </a>
<ul>
<li> <a href="FullDocument.html#attrcomError"> comError </a>
<li> <a href="FullDocument.html#attrconsecutivesComError"> consecutivesComError </a>
</ul>
<li> <a href="FullDocument.html#states"> States </a>
</ul>
......@@ -762,13 +764,372 @@
<hr>
<a name="attributes"> </a>
<br><br><br><br>
<font size="+1"><u><b> There is no attribute defined. </b></u></font>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=8> <font size=+1> <center><b> GpibPrologix Class Attributes </b></font></center></td>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td> <center><b> Name </b></center> </td>
<td> <center><b> Inherited </b></center> </td>
<td> <center><b> Abstract </b></center> </td>
<td> <center><b> Attr. type </b></center> </td>
<td> <center><b> R/W type </b></center> </td>
<td> <center><b> Data type </b></center> </td>
<td> <center><b> Level </b></center> </td>
<td> <center><b> Description </b></center> </td>
</tr>
<tr>
<td> <a href="AttrcomError.html"> comError </a> </td>
<td> false </td>
<td> false </td>
<td> Scalar </td>
<td> READ </td>
<td> Tango::DEV_USHORT </td>
<td> OPERATOR </td>
<td> total amount of communication errors since device start up </td>
</tr>
<tr>
<td> <a href="AttrconsecutivesComError.html"> consecutivesComError </a> </td>
<td> false </td>
<td> false </td>
<td> Scalar </td>
<td> READ </td>
<td> Tango::DEV_USHORT </td>
<td> OPERATOR </td>
<td> Consecutives communication errors </td>
</tr>
</table>
<br><br>
<hr>
<br><br>
<font size="+1"><u><b> There is no dynamic attribute defined. </b></u></font>
<br><br>
<hr>
<a name="attrcomError"> </a>
<br><br><br>
<font size="+1"><u><b> Attribute comError : </b></u></font>
<ul>
total amount of communication errors since device start up
</ul>
<br><br><br>
<Table Border=0 Cellpadding=0 CELLSPACING=20>
<TR>
<TD ALIGN="left" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Definition </b></font></center></td>
</tr>
<tr>
<td> Attribute Type </td>
<td> Scalar </td>
</tr>
<tr>
<td> R/W Type </td>
<td> READ </td>
</tr>
<tr>
<td> Data Type </td>
<td> Tango::DEV_USHORT </td>
</tr>
<tr>
<td> Display Level </td>
<td> OPERATOR </td>
</tr>
<tr>
<td> Inherited </td>
<td> false </td>
</tr>
<tr>
<td> Abstract </td>
<td> false </td>
</tr>
<tr>
<td> Polling Period </td>
<td> Not polled </td>
</tr>
<tr>
<td> Memorized </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Read allowed for </td>
<td> All states </td>
</tr>
</table>
</td>
<TD ALIGN="Center" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Properties </b></font></center></td>
</tr>
<tr>
<td> label </td>
<td> com error </td>
</tr>
<tr>
<td> unit </td>
<td> </td>
</tr>
<tr>
<td> standard unit </td>
<td> </td>
</tr>
<tr>
<td> display unit </td>
<td> </td>
</tr>
<tr>
<td> format </td>
<td> %d </td>
</tr>
<tr>
<td> max_value </td>
<td> </td>
</tr>
<tr>
<td> min_value </td>
<td> </td>
</tr>
<tr>
<td> max_alarm </td>
<td> </td>
</tr>
<tr>
<td> min_alarm </td>
<td> </td>
</tr>
<tr>
<td> max_warning </td>
<td> </td>
</tr>
<tr>
<td> min_warning </td>
<td> </td>
</tr>
<tr>
<td> delta_time </td>
<td> </td>
</tr>
<tr>
<td> delta_val </td>
<td> </td>
</tr>
</table>
</td>
<TD ALIGN="Right" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Event Criteria </b></font></center></td>
</tr>
<tr>
<td> Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Archive Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Push Change event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push Archive event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push DataReady event by user code </td>
<td> false </td>
</tr>
</table>
</td>
</TR>
</table>
<br><br>
<hr>
<a name="attrconsecutivesComError"> </a>
<br><br><br>
<font size="+1"><u><b> Attribute consecutivesComError : </b></u></font>
<ul>
Consecutives communication errors
</ul>
<br><br><br>
<Table Border=0 Cellpadding=0 CELLSPACING=20>
<TR>
<TD ALIGN="left" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Definition </b></font></center></td>
</tr>
<tr>
<td> Attribute Type </td>
<td> Scalar </td>
</tr>
<tr>
<td> R/W Type </td>
<td> READ </td>
</tr>
<tr>
<td> Data Type </td>
<td> Tango::DEV_USHORT </td>
</tr>
<tr>
<td> Display Level </td>
<td> OPERATOR </td>
</tr>
<tr>
<td> Inherited </td>
<td> false </td>
</tr>
<tr>
<td> Abstract </td>
<td> false </td>
</tr>
<tr>
<td> Polling Period </td>
<td> Not polled </td>
</tr>
<tr>
<td> Memorized </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Read allowed for </td>
<td> All states </td>
</tr>
</table>
</td>
<TD ALIGN="Center" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Properties </b></font></center></td>
</tr>
<tr>
<td> label </td>
<td> consecutives errors </td>
</tr>
<tr>
<td> unit </td>
<td> </td>
</tr>
<tr>
<td> standard unit </td>
<td> </td>
</tr>
<tr>
<td> display unit </td>
<td> </td>
</tr>
<tr>
<td> format </td>
<td> %d </td>
</tr>
<tr>
<td> max_value </td>
<td> </td>
</tr>
<tr>
<td> min_value </td>
<td> </td>
</tr>
<tr>
<td> max_alarm </td>
<td> </td>
</tr>
<tr>
<td> min_alarm </td>
<td> </td>
</tr>
<tr>
<td> max_warning </td>
<td> </td>
</tr>
<tr>
<td> min_warning </td>
<td> </td>
</tr>
<tr>
<td> delta_time </td>
<td> </td>
</tr>
<tr>
<td> delta_val </td>
<td> </td>
</tr>
</table>
</td>
<TD ALIGN="Right" VALIGN=top>
<Table Border=2 Cellpadding=3 CELLSPACING=0>
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan=0> <font size=+1> <center><b> Attribute Event Criteria </b></font></center></td>
</tr>
<tr>
<td> Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Archive Periodic </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Relative Change </td>
<td> Not set </td>
</tr>
<tr>
<td> Archive Absolute Change </td>
<td> Not set </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td><Hr></Td><Td><Hr></Td></Tr>
<tr>
<td> Push Change event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push Archive event by user code </td>
<td> false </td>
</tr>
<Tr BGCOLOR="#CCCCFF"><Td> </Td><Td> </Td></Tr>
<tr>
<td> Push DataReady event by user code </td>
<td> false </td>
</tr>
</table>
</td>
</TR>
</table>
<br><br>
<hr>
<br><br>
<hr>
<a name="states"> </a>
......
......@@ -8,7 +8,7 @@
</parent>
<groupId>fr.soleil.device</groupId>
<artifactId>GpibPrologix-${aol}-${mode}</artifactId>
<version>1.3.2</version>
<version>1.4.0</version>
<packaging>nar</packaging>
<name>GpibPrologix</name>
<description>GpibPrologix device</description>
......@@ -55,12 +55,10 @@
<dependency>
<groupId>fr.soleil.lib</groupId>
<artifactId>YAT4Tango-${aol}-${library}-${mode}</artifactId>
<version>1.13.14</version>
</dependency>
<dependency>
<groupId>fr.soleil.lib</groupId>
<artifactId>YAT-${aol}-${library}-${mode}</artifactId>
<version>1.20.3</version>
</dependency>
</dependencies>
<scm>
......
This diff is collapsed.
......@@ -40,6 +40,7 @@
#include <tango.h>
#include <yat/network/ClientSocket.h>
#include <yat/memory/SharedPtr.h>
#include <deque>
/*----- PROTECTED REGION END -----*/ // GpibPrologix.h
......@@ -108,6 +109,10 @@ public:
// default : no default -must be set
Tango::DevShort gpibAddress;
// Attribute data members
public:
Tango::DevUShort *attr_comError_read;
Tango::DevUShort *attr_consecutivesComError_read;
// Constructors and destructors
public:
......@@ -169,6 +174,25 @@ public:
//--------------------------------------------------------
virtual void read_attr_hardware(vector<long> &attr_list);
/**
* Attribute comError related methods
* Description: total amount of communication errors since device start up
*
* Data type: Tango::DevUShort
* Attr type: Scalar
*/
virtual void read_comError(Tango::Attribute &attr);
virtual bool is_comError_allowed(Tango::AttReqType type);
/**
* Attribute consecutivesComError related methods
* Description: Consecutives communication errors
*
* Data type: Tango::DevUShort
* Attr type: Scalar
*/
virtual void read_consecutivesComError(Tango::Attribute &attr);
virtual bool is_consecutivesComError_allowed(Tango::AttReqType type);
//--------------------------------------------------------
/**
......@@ -275,11 +299,10 @@ public:
// Additional Method prototypes
protected :
yat::ClientSocket* m_sock;
yat::Mutex m_lock;
yat::SharedPtr<yat::ClientSocket> m_sock;
Tango::DeviceProxy *selfDS;
//- on com error (read timeout...), call Init
yat::SharedPtr<Tango::DeviceProxy> m_selfDS;
/**
* Disconnect from the current socket
......
<?xml version="1.0" encoding="ASCII"?>
<pogoDsl:PogoSystem xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pogoDsl="http://www.esrf.fr/tango/pogo/PogoDsl">
<classes name="GpibPrologix" pogoRevision="9.6">
<description description="communication interface to gpib instruments through Prologix gpib-ethernet controller&#xA;Only 1 instrument can be connected to GpibPrologix device" title="GpibPrologix" sourcePath="/home/informatique/ica/elattaoui/git/gpibprologix/src" language="Cpp" filestogenerate="XMI file,Code files,VC12 Project,Protected Regions,html Pages,WindowsCMakeLists" hasMandatoryProperty="false" hasConcreteProperty="true" hasAbstractCommand="false" hasAbstractAttribute="false" descriptionHtmlExists="true">
<description description="communication interface to gpib instruments through Prologix gpib-ethernet controller&#xA;Only 1 instrument can be connected to GpibPrologix device" title="GpibPrologix" sourcePath="/home/informatique/ica/elattaoui/git/gpibprologix/src" language="Cpp" filestogenerate="XMI file,Code files,Protected Regions,html Pages" hasMandatoryProperty="false" hasConcreteProperty="true" hasAbstractCommand="false" hasAbstractAttribute="false" descriptionHtmlExists="true">
<inheritances classname="Device_4Impl" sourcePath=""/>
<identification contact="at synchrotron-soleil.fr - coquet" author="coquet" emailDomain="synchrotron-soleil.fr" classFamily="Communication" siteSpecific="" platform="All Platforms" bus="GPIB" manufacturer="none" reference=""/>
</description>
......@@ -132,6 +132,22 @@
</argout>
<status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
</commands>
<attributes name="comError" attType="Scalar" rwType="READ" displayLevel="OPERATOR" polledPeriod="0" maxX="" maxY="" allocReadMember="false" isDynamic="false">
<dataType xsi:type="pogoDsl:UShortType"/>
<changeEvent fire="false" libCheckCriteria="false"/>
<archiveEvent fire="false" libCheckCriteria="false"/>
<dataReadyEvent fire="false" libCheckCriteria="true"/>
<status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
<properties description="total amount of communication errors since device start up" label="com error" unit="" standardUnit="" displayUnit="" format="%d" maxValue="" minValue="" maxAlarm="" minAlarm="" maxWarning="" minWarning="" deltaTime="" deltaValue=""/>
</attributes>
<attributes name="consecutivesComError" attType="Scalar" rwType="READ" displayLevel="OPERATOR" polledPeriod="0" maxX="" maxY="" allocReadMember="false" isDynamic="false">
<dataType xsi:type="pogoDsl:UShortType"/>
<changeEvent fire="false" libCheckCriteria="false"/>
<archiveEvent fire="false" libCheckCriteria="false"/>
<dataReadyEvent fire="false" libCheckCriteria="true"/>
<status abstract="false" inherited="false" concrete="true" concreteHere="true"/>
<properties description="Consecutives communication errors" label="consecutives errors" unit="" standardUnit="" displayUnit="" format="%d" maxValue="" minValue="" maxAlarm="" minAlarm="" maxWarning="" minWarning="" deltaTime="" deltaValue=""/>
</attributes>
<preferences docHome="../doc/doc_html" makefileHome="$(TANGO_HOME)"/>
</classes>
</pogoDsl:PogoSystem>
......@@ -597,6 +597,54 @@ void GpibPrologixClass::attribute_factory(vector<Tango::Attr *> &att_list)
// Add your own code
/*----- PROTECTED REGION END -----*/ // GpibPrologixClass::attribute_factory_before
// Attribute : comError
comErrorAttrib *comerror = new comErrorAttrib();
Tango::UserDefaultAttrProp comerror_prop;
comerror_prop.set_description("total amount of communication errors since device start up");
comerror_prop.set_label("com error");
// unit not set for comError
// standard_unit not set for comError
// display_unit not set for comError
comerror_prop.set_format("%d");
// max_value not set for comError
// min_value not set for comError
// max_alarm not set for comError
// min_alarm not set for comError
// max_warning not set for comError
// min_warning not set for comError
// delta_t not set for comError
// delta_val not set for comError
comerror->set_default_properties(comerror_prop);
// Not Polled
comerror->set_disp_level(Tango::OPERATOR);
// Not Memorized
att_list.push_back(comerror);
// Attribute : consecutivesComError
consecutivesComErrorAttrib *consecutivescomerror = new consecutivesComErrorAttrib();
Tango::UserDefaultAttrProp consecutivescomerror_prop;
consecutivescomerror_prop.set_description("Consecutives communication errors");
consecutivescomerror_prop.set_label("consecutives errors");
// unit not set for consecutivesComError
// standard_unit not set for consecutivesComError
// display_unit not set for consecutivesComError
consecutivescomerror_prop.set_format("%d");
// max_value not set for consecutivesComError
// min_value not set for consecutivesComError
// max_alarm not set for consecutivesComError
// min_alarm not set for consecutivesComError
// max_warning not set for consecutivesComError
// min_warning not set for consecutivesComError
// delta_t not set for consecutivesComError
// delta_val not set for consecutivesComError
consecutivescomerror->set_default_properties(consecutivescomerror_prop);
// Not Polled
consecutivescomerror->set_disp_level(Tango::OPERATOR);
// Not Memorized
att_list.push_back(consecutivescomerror);
// Create a list of static attributes
create_static_attribute_list(get_class_attr()->get_attr_list());
......
......@@ -55,6 +55,36 @@ namespace GpibPrologix_ns
/*----- PROTECTED REGION END -----*/ // GpibPrologixClass::classes for dynamic creation
//=========================================
// Define classes for attributes
//=========================================
// Attribute comError class definition
class comErrorAttrib: public Tango::Attr
{
public:
comErrorAttrib():Attr("comError",
Tango::DEV_USHORT, Tango::READ) {};
~comErrorAttrib() {};
virtual void read(Tango::DeviceImpl *dev,Tango::Attribute &att)
{(static_cast<GpibPrologix *>(dev))->read_comError(att);}
virtual bool is_allowed(Tango::DeviceImpl *dev,Tango::AttReqType ty)
{return (static_cast<GpibPrologix *>(dev))->is_comError_allowed(ty);}
};
// Attribute consecutivesComError class definition
class consecutivesComErrorAttrib: public Tango::Attr
{
public:
consecutivesComErrorAttrib():Attr("consecutivesComError",
Tango::DEV_USHORT, Tango::READ) {};
~consecutivesComErrorAttrib() {};
virtual void read(Tango::DeviceImpl *dev,Tango::Attribute &att)
{(static_cast<GpibPrologix *>(dev))->read_consecutivesComError(att);}
virtual bool is_allowed(Tango::DeviceImpl *dev,Tango::AttReqType ty)
{return (static_cast<GpibPrologix *>(dev))->is_consecutivesComError_allowed(ty);}
};
//=========================================
// Define classes for commands
//=========================================
......
......@@ -50,6 +50,38 @@ namespace GpibPrologix_ns
// Attributes Allowed Methods
//=================================================
//--------------------------------------------------------
/**
* Method : GpibPrologix::is_comError_allowed()
* Description : Execution allowed for comError attribute
*/
//--------------------------------------------------------
bool GpibPrologix::is_comError_allowed(TANGO_UNUSED(Tango::AttReqType type))
{
// Not any excluded states for comError attribute in read access.
/*----- PROTECTED REGION ID(GpibPrologix::comErrorStateAllowed_READ) ENABLED START -----*/
/*----- PROTECTED REGION END -----*/ // GpibPrologix::comErrorStateAllowed_READ
return true;
}
//--------------------------------------------------------
/**
* Method : GpibPrologix::is_consecutivesComError_allowed()
* Description : Execution allowed for consecutivesComError attribute
*/
//--------------------------------------------------------
bool GpibPrologix::is_consecutivesComError_allowed(TANGO_UNUSED(Tango::AttReqType type))
{
// Not any excluded states for consecutivesComError attribute in read access.
/*----- PROTECTED REGION ID(GpibPrologix::consecutivesComErrorStateAllowed_READ) ENABLED START -----*/
/*----- PROTECTED REGION END -----*/ // GpibPrologix::consecutivesComErrorStateAllowed_READ
return true;
}
//=================================================
// Commands Allowed Methods
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment