The 3.13 Record Reference manual pages for the SubArray record state that
the field MALM is the "Maximum Number of Elements in the Sub-array". This is
not true. If I wish to extract one element and only one element from a
waveform record, and therefore the "Maximum Number of Elements in the Sub-array"
is "1" the record support forces the INDX field to "0";i.e, I can never
access any element greater than "0" From the record support code for the
Sub-Array record:
if (psa->indx >= psa->malm)
{
psa->indx = psa->malm - 1;
}
The consequences of this is if one is required to blow out each and every
element of an array into a separate process variable (Don't ask why - it's
imposed on me by other considerations) MALM must be set to the input array size,
not the "Maximum Sub-Array Size" which in this case is "1". Since the record
support allocates memory based on MALM, breaking up an N element array into N
process variables means NxN memory locations will be allocated, even though only
N elements will be used! Not a problem for small arrays but when larger arrays
are involved the memory consumption seems excessive.
If this has been covered before, please excuse the noise.
Frank
- Replies:
- Re: SubArray Record Noboru Yamamoto
- Navigate by Date:
- Prev:
Request for antique Bitbus hardware Chestnut, Ronald P.
- Next:
Re: SubArray Record Noboru Yamamoto
- 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:
Request for antique Bitbus hardware Chestnut, Ronald P.
- Next:
Re: SubArray Record Noboru Yamamoto
- 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
|