|
FAST Protocol
< Previous Next >
Re: Optional decimal fields with individual operators
David Rosenborg / Pantor Engineering AB 27 Aug 2008 10:38AM ETAle -
A bit in the pmap indicates how a field operator should be executed. The exact meaning of the bit is dependent on the operator type and its attributes.
The bit doesn't automatically indicate whether an optional field is NULL or not. Only after exercising the operator according to the bit you'll know if the value is NULL or not.
When using a decimal field with individual operators, and the value of an exponent field is NULL, the instruction for the mantissa should be skipped.
You may want to have a look a this post (and other posts in the same thread):
http://www.fixprotocol.org/discuss/read/24ed599c
/David
> Hello, I would need a clarification.
>
> The handbook [section 10.5.1 -- Presence Map and NULL Utilization] says:
>
> [...]If the decimal has optional presence, the exponent field is treated
> as an optional integer field and the mantissa field is treated as a
> mandatory integer field. The presence of the mantissa field and any
> related bits in the presence map are dependent on the presence of the
> exponent. The mantissa field appears in the stream iff the exponent
> value is considered present. If the mantissa has an operator that
> requires a bit in the presence map, this bit is present iff the exponent
> value is considered present.[...]
>
> Let suppose I have the following decimal field in my template
> definition:
>
> < decimal name="MDEntryPx" id="270" presence="optional" > < exponent > <
> copy value="-2" / > < / exponent > < mantissa > < delta / > < / mantissa
> > < /decimal >
>
> For the best of my comprehension in this case the exponent is optional,
> and has its own bit in pmap (due to the copy operator). If that bit is
> not set (the exponent is not present in the stream for sure) then the
> mantissa will be not present in the stream as well.
>
> 1. Does the same worth if the bit in pmap is set but the exponent
> value is NULL?
> 2. What about the new previous value of the Scaled Number if the
> exponent has to be considered absent?
>
> Moreover, the fact that the exponent bit in pmap is not set should not
> imply that the value of the exponent field will be not assigned (e.g. it
> should be assigned to the copy initial value, or to the previous value
> stored in the dictionary).
>
> 3.Let suppose the mantissa is not in the stream (because of the exponent
> absence), what does it imply in term of the mantissa field value, and in
> term of the mantissa new previous value?
>
> Many thanks in advance. Kind regards, -- Ale
Re: Optional decimal fields with individual operators David Rosenborg / Pantor Engineering AB 27 Aug 2008 10:38AM ET
|