From cb50d640aa3351de0ad17cbbe38a2d576210bdf5 Mon Sep 17 00:00:00 2001
From: Gwenaelle Abeille <gwenaelle.abeille@synchrotron-soleil.fr>
Date: Wed, 15 Jun 2005 10:22:17 +0000
Subject: [PATCH] added attributes channelXEnable.

---
 doc/DeviceServerUsersGuide_en.doc  | Bin 128000 -> 130048 bytes
 doc/doc_html/Attributes.html       |  26 +++++++++-
 doc/doc_html/DevCommands.html      |   2 +-
 doc/doc_html/DevCommandsTable.html |   2 +-
 doc/doc_html/Properties.html       |   2 +-
 doc/doc_html/TangoDevStates.html   |   2 +-
 doc/doc_html/index.html            |   2 +-
 src/ContinuousAO.cpp               |  47 ++++++++++++++++-
 src/ContinuousAO.h                 |  15 +++++-
 src/ContinuousAOClass.cpp          |  79 ++++++++++++++++++++++++++++-
 10 files changed, 165 insertions(+), 12 deletions(-)

diff --git a/doc/DeviceServerUsersGuide_en.doc b/doc/DeviceServerUsersGuide_en.doc
index 478eb7775ecdc7047c7d51cb1129088cc00ecdb6..38891b3a184d65c2e7ecbdad3afd590037278379 100644
GIT binary patch
delta 9013
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
YUvC+!7@toseaBeO_<sA>cZ}Su0O7~p1^@s6

delta 7129
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

diff --git a/doc/doc_html/Attributes.html b/doc/doc_html/Attributes.html
index 6a55345..bfd1523 100644
--- a/doc/doc_html/Attributes.html
+++ b/doc/doc_html/Attributes.html
@@ -28,7 +28,7 @@ Device Attributes Description
 </h1>
 <Br>
 <b>
-Revision: 1.1.1.1 - Author: syldup
+Revision: 1.2 - Author: abeilleg
 </b>
 </center>
 
@@ -48,6 +48,30 @@ Revision: 1.1.1.1 - Author: syldup
 <Tr><Td><b><Center>useBoardFifo</b><Br>( Set to 1 if data have been loaded in FIFO. Set to 0 if data is continuously tranfered through DMA (possible underrun) )</Center></Td>
 <Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
 
+<Tr><Td><b><Center>channel0Enable</b><Br>( If equals to 1, data is output on channel 0, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
+<Tr><Td><b><Center>channel1Enable</b><Br>( If equals to 1, data is output on channel 1, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
+<Tr><Td><b><Center>channel2Enable</b><Br>( If equals to 1, data is output on channel 2, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
+<Tr><Td><b><Center>channel3Enable</b><Br>( If equals to 1, data is output on channel 3, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
+<Tr><Td><b><Center>channel4Enable</b><Br>( If equals to 1, data is output on channel 4, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
+<Tr><Td><b><Center>channel5Enable</b><Br>( If equals to 1, data is output on channel 5, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
+<Tr><Td><b><Center>channel6Enable</b><Br>( If equals to 1, data is output on channel 6, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
+<Tr><Td><b><Center>channel7Enable</b><Br>( If equals to 1, data is output on channel 7, otherwise the channel is disable. )</Center></Td>
+<Td><Center>DEV_SHORT</Center></Td><Td><Center>READ</Center></Td><Td><Center>No</Center></Td></Tr>
+
 </Table>
 </Center>
 <Br><Br><Br><Br><Br>
diff --git a/doc/doc_html/DevCommands.html b/doc/doc_html/DevCommands.html
index 5a04c92..67db7bf 100644
--- a/doc/doc_html/DevCommands.html
+++ b/doc/doc_html/DevCommands.html
@@ -28,7 +28,7 @@ Device Commands Description
 </h1>
 <Br>
 <b>
-Revision: 1.1.1.1 - Author: syldup
+Revision: 1.2 - Author: abeilleg
 </b>
 </center>
 
diff --git a/doc/doc_html/DevCommandsTable.html b/doc/doc_html/DevCommandsTable.html
index ed4864c..f8d9998 100644
--- a/doc/doc_html/DevCommandsTable.html
+++ b/doc/doc_html/DevCommandsTable.html
@@ -28,7 +28,7 @@ Device Commands Description
 </h1>
 <Br>
 <b>
-Revision: 1.1.1.1 - Author: syldup
+Revision: 1.2 - Author: abeilleg
 </b>
 </center>
 
diff --git a/doc/doc_html/Properties.html b/doc/doc_html/Properties.html
index 12276a2..dd5aa31 100644
--- a/doc/doc_html/Properties.html
+++ b/doc/doc_html/Properties.html
@@ -28,7 +28,7 @@ Properties Description
 </h1>
 <Br>
 <b>
-Revision: 1.1.1.1 - Author: syldup
+Revision: 1.2 - Author: abeilleg
 </b>
 </center>
 
diff --git a/doc/doc_html/TangoDevStates.html b/doc/doc_html/TangoDevStates.html
index 40e2a28..cb1d680 100644
--- a/doc/doc_html/TangoDevStates.html
+++ b/doc/doc_html/TangoDevStates.html
@@ -28,7 +28,7 @@ Device States Description
 </h1>
 <Br>
 <b>
-Revision: 1.1.1.1 - Author: syldup
+Revision: 1.2 - Author: abeilleg
 </b>
 </center>
 
diff --git a/doc/doc_html/index.html b/doc/doc_html/index.html
index 79e9862..35a6f3b 100644
--- a/doc/doc_html/index.html
+++ b/doc/doc_html/index.html
@@ -28,7 +28,7 @@ Device Server User's Guide
 </h1>
 <Br>
 <b>
-Revision: 1.1.1.1 - Author: syldup
+Revision: 1.2 - Author: abeilleg
 </b>
 </center>
 <Br>
diff --git a/src/ContinuousAO.cpp b/src/ContinuousAO.cpp
index 5e40207..8cc2d5a 100644
--- a/src/ContinuousAO.cpp
+++ b/src/ContinuousAO.cpp
@@ -1,4 +1,4 @@
-static const char *RcsId = "$Header: /users/chaize/newsvn/cvsroot/InputOutput/ADLINK/ContinuousAO/src/ContinuousAO.cpp,v 1.7 2005-04-21 08:33:44 abeilleg Exp $";
+static const char *RcsId = "$Header: /users/chaize/newsvn/cvsroot/InputOutput/ADLINK/ContinuousAO/src/ContinuousAO.cpp,v 1.8 2005-06-15 10:22:16 abeilleg Exp $";
 //+=============================================================================
 //
 // file :	  ContinuousAO.cpp
@@ -13,9 +13,12 @@ static const char *RcsId = "$Header: /users/chaize/newsvn/cvsroot/InputOutput/AD
 //
 // $Author: abeilleg $
 //
-// $Revision: 1.7 $
+// $Revision: 1.8 $
 //
 // $Log: not supported by cvs2svn $
+// Revision 1.7  2005/04/21 08:33:44  abeilleg
+// update state in always_exe_hk
+//
 // Revision 1.6  2005/01/25 10:12:58  abeilleg
 // status changed.
 //
@@ -1162,6 +1165,46 @@ void ContinuousAO::read_attr(Tango::Attribute &attr)
     else
       attr.set_quality(Tango::ATTR_INVALID);
 	}
+	else
+	if (attr_name == "channel0Enable")
+	{
+		attr.set_value(&channel0Enable);
+	}
+	else
+	if (attr_name == "channel1Enable")
+	{
+		attr.set_value(&channel1Enable);
+	}
+	else
+	if (attr_name == "channel2Enable")
+	{
+		attr.set_value(&channel2Enable);
+	}
+	else
+	if (attr_name == "channel3Enable")
+	{
+		attr.set_value(&channel3Enable);
+	}
+	else
+	if (attr_name == "channel4Enable")
+	{
+		attr.set_value(&channel4Enable);
+	}
+	else
+	if (attr_name == "channel5Enable")
+	{
+		attr.set_value(&channel5Enable);
+	}
+	else
+	if (attr_name == "channel6Enable")
+	{
+		attr.set_value(&channel6Enable);
+	}
+	else
+	if (attr_name == "channel7Enable")
+	{
+		attr.set_value(&channel7Enable);
+	}
 }
 
 //+------------------------------------------------------------------
diff --git a/src/ContinuousAO.h b/src/ContinuousAO.h
index 38f19cd..80cce63 100644
--- a/src/ContinuousAO.h
+++ b/src/ContinuousAO.h
@@ -8,9 +8,12 @@
 //
 // $Author: abeilleg $
 //
-// $Revision: 1.2 $
+// $Revision: 1.3 $
 //
 // $Log: not supported by cvs2svn $
+// Revision 1.2  2005/01/20 13:21:51  abeilleg
+// following ASL modifications (states management).
+//
 // Revision 1.1.1.1  2004/12/06 10:20:44  syldup
 // initial import
 //
@@ -38,7 +41,7 @@
 
 /**
  * @author	$Author: abeilleg $
- * @version	$Revision: 1.2 $ $
+ * @version	$Revision: 1.3 $ $
  */
 
  //	Add your own constants definitions here.
@@ -86,6 +89,14 @@ public :
 		Tango::DevDouble	*attr_channel7_read;
 		Tango::DevDouble	*attr_errorCounter_read;
 		Tango::DevShort	*attr_useBoardFifo_read;
+		Tango::DevShort	*attr_channel0Enable_read;
+		Tango::DevShort	*attr_channel1Enable_read;
+		Tango::DevShort	*attr_channel2Enable_read;
+		Tango::DevShort	*attr_channel3Enable_read;
+		Tango::DevShort	*attr_channel4Enable_read;
+		Tango::DevShort	*attr_channel5Enable_read;
+		Tango::DevShort	*attr_channel6Enable_read;
+		Tango::DevShort	*attr_channel7Enable_read;
 //@}
 
 /**
diff --git a/src/ContinuousAOClass.cpp b/src/ContinuousAOClass.cpp
index d2b6371..e3e5fb7 100644
--- a/src/ContinuousAOClass.cpp
+++ b/src/ContinuousAOClass.cpp
@@ -1,4 +1,4 @@
-static const char *RcsId = "$Header: /users/chaize/newsvn/cvsroot/InputOutput/ADLINK/ContinuousAO/src/ContinuousAOClass.cpp,v 1.2 2005-01-20 13:21:51 abeilleg Exp $";
+static const char *RcsId = "$Header: /users/chaize/newsvn/cvsroot/InputOutput/ADLINK/ContinuousAO/src/ContinuousAOClass.cpp,v 1.3 2005-06-15 10:22:17 abeilleg Exp $";
 
 static const char *TagName = "$Name: not supported by cvs2svn $";
 
@@ -20,9 +20,12 @@ static const char *RCSfile = "$RCSfile: ContinuousAOClass.cpp,v $";
 //
 // $Author: abeilleg $
 //
-// $Revision: 1.2 $
+// $Revision: 1.3 $
 //
 // $Log: not supported by cvs2svn $
+// Revision 1.2  2005/01/20 13:21:51  abeilleg
+// following ASL modifications (states management).
+//
 // Revision 1.1.1.1  2004/12/06 10:20:44  syldup
 // initial import
 //
@@ -509,6 +512,78 @@ void ContinuousAOClass::attribute_factory(vector<Tango::Attr *> &att_list)
 	use_board_fifo->set_default_properties(use_board_fifo_prop);
 	att_list.push_back(use_board_fifo);
 
+	//	Attribute : channel0Enable
+	Tango::Attr	*channel0_enable = 
+		new Tango::Attr("channel0Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel0_enable_prop;
+	channel0_enable_prop.set_label("channel0Enable");
+	channel0_enable_prop.set_description("If equals to 1, data is output on channel 0, otherwise the channel is disable.");
+	channel0_enable->set_default_properties(channel0_enable_prop);
+	att_list.push_back(channel0_enable);
+
+	//	Attribute : channel1Enable
+	Tango::Attr	*channel1_enable = 
+		new Tango::Attr("channel1Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel1_enable_prop;
+	channel1_enable_prop.set_label("channel1Enable");
+	channel1_enable_prop.set_description("If equals to 1, data is output on channel 1, otherwise the channel is disable.");
+	channel1_enable->set_default_properties(channel1_enable_prop);
+	att_list.push_back(channel1_enable);
+
+	//	Attribute : channel2Enable
+	Tango::Attr	*channel2_enable = 
+		new Tango::Attr("channel2Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel2_enable_prop;
+	channel2_enable_prop.set_label("channel2Enable");
+	channel2_enable_prop.set_description("If equals to 1, data is output on channel 2, otherwise the channel is disable.");
+	channel2_enable->set_default_properties(channel2_enable_prop);
+	att_list.push_back(channel2_enable);
+
+	//	Attribute : channel3Enable
+	Tango::Attr	*channel3_enable = 
+		new Tango::Attr("channel3Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel3_enable_prop;
+	channel3_enable_prop.set_label("channel3Enable");
+	channel3_enable_prop.set_description("If equals to 1, data is output on channel 3, otherwise the channel is disable.");
+	channel3_enable->set_default_properties(channel3_enable_prop);
+	att_list.push_back(channel3_enable);
+
+	//	Attribute : channel4Enable
+	Tango::Attr	*channel4_enable = 
+		new Tango::Attr("channel4Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel4_enable_prop;
+	channel4_enable_prop.set_label("channel4Enable");
+	channel4_enable_prop.set_description("If equals to 1, data is output on channel 4, otherwise the channel is disable.");
+	channel4_enable->set_default_properties(channel4_enable_prop);
+	att_list.push_back(channel4_enable);
+
+	//	Attribute : channel5Enable
+	Tango::Attr	*channel5_enable = 
+		new Tango::Attr("channel5Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel5_enable_prop;
+	channel5_enable_prop.set_label("channel5Enable");
+	channel5_enable_prop.set_description("If equals to 1, data is output on channel 5, otherwise the channel is disable.");
+	channel5_enable->set_default_properties(channel5_enable_prop);
+	att_list.push_back(channel5_enable);
+
+	//	Attribute : channel6Enable
+	Tango::Attr	*channel6_enable = 
+		new Tango::Attr("channel6Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel6_enable_prop;
+	channel6_enable_prop.set_label("channel6Enable");
+	channel6_enable_prop.set_description("If equals to 1, data is output on channel 6, otherwise the channel is disable.");
+	channel6_enable->set_default_properties(channel6_enable_prop);
+	att_list.push_back(channel6_enable);
+
+	//	Attribute : channel7Enable
+	Tango::Attr	*channel7_enable = 
+		new Tango::Attr("channel7Enable", Tango::DEV_SHORT, Tango::READ);
+	Tango::UserDefaultAttrProp	channel7_enable_prop;
+	channel7_enable_prop.set_label("channel7Enable");
+	channel7_enable_prop.set_description("If equals to 1, data is output on channel 7, otherwise the channel is disable.");
+	channel7_enable->set_default_properties(channel7_enable_prop);
+	att_list.push_back(channel7_enable);
+
 }
 //+----------------------------------------------------------------------------
 //
-- 
GitLab