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: Fundamental Types document
From: Marty Kraimer <[email protected]>
To: "'EPICS core-talk'" <[email protected]>
Date: Thu, 16 Jun 2005 09:07:56 -0500
Please note that Andrew is on vacation until June 27.

I just want to give a little background on how V4 epicsTypes.h evolved.

After the April developer's meeting I started thinking hard about how to implement the features described by the V4 DBD definitions. The first problem was "What data types are needed". There are two issues:

1) How to make the information available to dataAccess, i.e. how the data in the records can be accessed without using the header files generated from the DBD record definitions. This means that it must be easy to generate propertyCatalogs for accessing the data contained in a record. 2) How to make it easy and efficient it access the data via the header files.

V4 Design : epicsTypes is an attempt to address issue 1)
V4 Design: dbdClass is an attempt to address issue 2)

Thus fields in DBD records that will be made available to dataAccess in a generic manner will be one of the epicsTypes. dbdClass allows record support to get/put data in a convient and efficient way. It also makes it possible for any code that includes dbdClass to easily and efficently access any field of any DBD record or struct.

I have spent most of my time since the April meeting working on epicsTypes and dbdClass. They have both evolved considerably during this time. Andrew and I have had may discussions about these.

For the last few weeks Andrew has been making major changes to epicsTypes.h.
He took what I started and made many changes. Two major contributions are:
1) made the EpicsBuffer even more generic than I did. I had separate buffers for strings and for arrays. 2) made the definitions real C++ objects. He said that what I was proposing was C objects via C++ syntax. Note that dbdClass still suffers from this defect. I have to fix this before the July developer's meeting.

The main focus of this effort is how to manage storage for data associated with epics records.

It seems to me that a gateway has to address the same problem except that it may be even harder. I will guess that a gateway will be able to use everything in epicsTypes and also need something like dbdClass. I am really interested in hearing Ralph's, Benjamin's etc thoughts on how the gateway will manage storage. In particular how will it handle the data connected to an arbitrary propertyId?

I still keep thinking about Doug Murray's request to show a "Hello World" example for dataAccess. It made me start thinking about what would happen if the request was Show me "hello world" that included an array and a simple structure of information. Thus I think that some additional support is needed to make it easier to use dataAccess.


Marty




Replies:
Re: Fundamental Types / Gateway Ralph Lange
References:
RE: Fundamental Types document Jeff Hill

Navigate by Date:
Prev: Re: meeting in July / ca interface specification Doug Murray
Next: Re: Fundamental Types document 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: Fundamental Types document Jeff Hill
Next: Re: Fundamental Types / Gateway Ralph Lange
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 ·