EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: menuFtype for 64 bit integers aka. long long and unsigned long long
From: Mark Rivers <[email protected]>
To: Hinko Kocevar <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Thu, 22 Mar 2012 19:29:09 +0000
If you have a specific application that needs an integer with more than 32-bits but fewer than 54-bits you may be able to just use a epicsFloat64.  I believe an epicsFloat64 can exactly represent integers up to 53 (or 54) bits.

Mark
 

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Andrew Johnson
Sent: Tuesday, March 20, 2012 6:15 PM
To: Hinko Kocevar
Cc: [email protected]
Subject: Re: menuFtype for 64 bit integers aka. long long and unsigned long long

Hi Hinko,

On 2012-03-15 Hinko Kocevar wrote:
> Are there any plans on adding support for 64-bit types to menuFtype (for
> 3.14.x branch)?

This will definitely never happen on the 3.14.x branch, and probably not on 
the 3.15.x branch either (there should be a 3.15.0 release out this summer).

> Are there any workarounds for this issue?

This idea is really horrible but it should work as long as you're very 
careful: If you are responsible for the device support and all the CA client 
programs and you can do any IOC-based processing that is necessary inside a 
subroutine or aSub record then you could pretend to the IOC code that your 64-
bit data types are epicsFloat64 (i.e. double) values and use casts to convert 
them back and forth.  However you won't be able to use any of the standard 
tools to look at the values, and I really don't recommend doing this.

> I guess this change would affect basic EPICS type handling code - not
> record, driver or device support code.

Adding new data types to EPICS is not easy, even just within the IOC, because 
there are function-tables and case statements all over the place.  If you also 
want to transmit that information over CA then there are even more 
complications.

The simplest way to handle 64-bit values is probably to split them into 2x32-
bit values that you pass around in arrays.

HTH,

- Andrew
-- 
Never interrupt your enemy when he is making a mistake.
-- Napoleon Bonaparte


Replies:
Re: menuFtype for 64 bit integers aka. long long and unsigned long long Hinko Kocevar
References:
menuFtype for 64 bit integers aka. long long and unsigned long long Hinko Kocevar
Re: menuFtype for 64 bit integers aka. long long and unsigned long long Andrew Johnson

Navigate by Date:
Prev: Re: hdf5 (h5py) anyone? Matt Newville
Next: list of pv aliases Emmanuel Mayssat
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: menuFtype for 64 bit integers aka. long long and unsigned long long Benjamin Franksen
Next: Re: menuFtype for 64 bit integers aka. long long and unsigned long long Hinko Kocevar
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·