EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: ICE and TIPC
From: Marty Kraimer <[email protected]>
To: [email protected]
Date: Thu, 28 Jul 2005 08:15:17 -0500


Jeff Hill wrote:


Since DA is smaller and more general
purpose than EPICS it seems natural for EPICS to be dependent on DA and not
visa-versa.

What do you think?


Perhaps this is the real reason why we have so much trouble finding common ground.

Two viewpoints:

1) dataAccess is the core for all data passing. A key feature is that, for each language implementation, it must support all primitive types.

2) For network accesssable data a key requirement is to define a set of primitive types that can be widely supported.

The dataAccess camp says that 2) is not really important.
Others, at least me, say that 2) is VERY important and the key feature described in 1) should be modified to say "network primitive types" instead of "all primitive types".

Let me restate 1) in another way that I think does reflect the thinking of at least Jeff, Ralph, and Benjamin.

dataAccess is really a great idea and has a really great C++ implementation. The implementation is so good that EPICS V4 must adapt it as is.

Let me state 2) another way that reflects my thinking and possibly others.

If dataAccess is not willing to change for EPICS V4 then maybe we should just abandon dataAccess.


Let me once more state what I think should be the requirements for extensible network accessable data.

primitive data types: bool, octet, int16, int32, int64, float32, float64
string:  UTF-8 encoded chars

In addition array and structured data must be supported. Perhaps

array: 1 dim array. The field types can be primitive, string, array, or structure
MDarray: multiple dimensioned array of primitive type
struct: ??? If dataAccess is used perhaps this is just a propertyCatalog.


In addition It should be possible for a client to easily introspect the data types provided be a server.
The following is not very satisfying:

template < class T >
struct TypedVoid { };

One other thing bothers me. Much of the discussion is VERY C++ centric. But most of what we want for EPICS V4 should be implementable in at least C++ and Java. Even if something is defined in C++ it should be easily converted to a Java definition.


Marty


Replies:
Re: ICE and TIPC Kay-Uwe Kasemir
RE: ICE and TIPC Jeff Hill
primitive data types, was: ICE and TIPC Kay-Uwe Kasemir
Re: ICE and TIPC Ralph Lange
References:
RE: ICE and TIPC Jeff Hill

Navigate by Date:
Prev: Re: DA / Generic Container Yard Ralph Lange
Next: Re: String Interfaces Marty Kraimer
Index: 2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: ICE and TIPC Jeff Hill
Next: Re: ICE and TIPC Kay-Uwe Kasemir
Index: 2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Feb 2012 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·