Experimental Physics and Industrial Control System
Subject: |
RE: camonitor and caget - displaying unsigned longs in hexadecimal |
From: |
"Allison, Stephanie" <[email protected]> |
To: |
<[email protected]> |
Date: |
Fri, 4 Dec 2009 16:15:50 -0800 |
Hi Andrew,
Thanks for the detailed explanation. Unfortunately, camonitor doesn't
support the -d option (and I'd really like to see hex from camonitor).
This should be something possible with some code modification, I think.
Thanks again,
Stephanie
> -----Original Message-----
> From: Andrew Johnson [mailto:[email protected]]
> Sent: Friday, December 04, 2009 3:55 PM
> To: [email protected]
> Cc: Allison, Stephanie
> Subject: Re: camonitor and caget - displaying unsigned longs in
hexadecimal
>
> Hi Stephanie,
>
> On Friday 04 December 2009 17:16:34 Allison, Stephanie wrote:
> >
> > I notice that camonitor and caget do not honor the "-0x" option
(option
> > to printout as hex) for PVs that are unsigned long's. Such PVs are
sent
> > over CA as double's and -0x is not available for doubles, per
design.
> > Are there other options that I could use instead? Should I look
into
> > changing the tools to allow for -0x for unsigned long's?
>
> CA can't transport unsigned types as such, although the IOC database
supports
> them. If you do a cainfo of one of your ULONG PVs you'll see that its
native
> type actually gets reported as a DBF_DOUBLE, which is the smallest
type that
> CA can guarantee will pass any ULONG value correctly. Unfortunately
CA gives
> no indication of what the real database type is, so I don't think the
tool
> could properly detect that the field is really a ULONG.
>
> However if you ask caget or camonitor to use DBR_LONG when fetching
the value
> (add the switch -d LONG) then it does honor the -0x switch, but the
display
> format is different. Also if your client is a 64 bit machine you
might get
> the sign bit extended for display. This is the output I get on
linux-x86_64
> when the top bit is set (note that the DBF_LONG and DBR_LONG types are
only 32
> bits wide even on 64-bit architectures):
>
> tux% caget -d LONG -0x anjHost:compressExample.N
> anjHost:compressExample.N
> Native data type: DBF_DOUBLE
> Request type: DBR_LONG
> Element count: 1
> Value: 0xFFFFFFFF80000000
>
> HTH, HANW,
>
> - Andrew
> --
> The best FOSS code is written to be read by other humans -- Harald
Welte
- Replies:
- Re: camonitor and caget - displaying unsigned longs in hexadecimal Eric Norum
- References:
- camonitor and caget - displaying unsigned longs in hexadecimal Allison, Stephanie
- Re: camonitor and caget - displaying unsigned longs in hexadecimal Andrew Johnson
- Navigate by Date:
- Prev:
Re: camonitor and caget - displaying unsigned longs in hexadecimal Andrew Johnson
- Next:
Re: camonitor and caget - displaying unsigned longs in hexadecimal Eric Norum
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
<2009>
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: camonitor and caget - displaying unsigned longs in hexadecimal Andrew Johnson
- Next:
Re: camonitor and caget - displaying unsigned longs in hexadecimal Eric Norum
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
<2009>
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024