Fennel: FixedWidthNetworkAccessor64 Class Reference (original) (raw)
FixedWidthNetworkAccessor64 accesses NOT NULL fixed width 64-bit attributes in network byte order. More...
#include <[AttributeAccessorImpl.h](AttributeAccessorImpl%5F8h-source.html)>
Inheritance diagram for FixedWidthNetworkAccessor64:

| Public Member Functions | |
|---|---|
| void | unmarshalValue (TupleAccessor const &tupleAccessor, TupleDatum &value) const |
| Unmarshals the attribute's value by setting up the data pointer, length, and null indicator; does not actually copy any data. | |
| void | marshalValueData (PBuffer pDestData, TupleDatum const &value) const |
| Marshals value data for the attribute. | |
| bool | unmarshalNullableValue (TupleAccessor const &tupleAccessor, TupleDatum &value) const |
| Tests the null indicator for this attribute in the tuple's null bit array. | |
| Public Attributes | |
| uint | iNullBit |
| Index of this attribute's null indicator bit in the tuple's bit array, or MAXU for a NOT NULL attribute. | |
| uint | iFixedOffset |
| Byte offset of this attribute within a stored tuple image, or MAXU if the start is variable. | |
| uint | iEndIndirectOffset |
| Indirect offset of the end of this attribute within a stored tuple image, or MAXU if the end is fixed. | |
| uint | iValueBit |
| Index of this attribute's value in the tuple's bit array, or MAXU for a non-bit attribute. | |
| TupleStorageByteLength | cbStorage |
| Copied from TupleAttributeDescriptor.cbStorage. |
Detailed Description
FixedWidthNetworkAccessor64 accesses NOT NULL fixed width 64-bit attributes in network byte order.
Definition at line 151 of file AttributeAccessorImpl.h.
Member Function Documentation
| void FixedWidthNetworkAccessor64::unmarshalValue | ( | TupleAccessor const & | tupleAccessor, |
|---|---|---|---|
| TupleDatum & | value | ||
| ) | const [inline, virtual] |
| void FixedWidthNetworkAccessor64::marshalValueData | ( | PBuffer | pDestData, |
|---|---|---|---|
| TupleDatum const & | value | ||
| ) | const [inline, virtual] |
Marshals value data for the attribute.
Only deals with the data bytes, not length and null indicators.
Parameters:
| pDestData | the target address where the data should be marshalled |
|---|---|
| value | the value to be marshalled |
Reimplemented from AttributeAccessorImpl.
Definition at line 164 of file AttributeAccessorImpl.h.
References TupleDatum::cbData, and TupleDatum::pData.
00167 { 00168 assert(value.cbData == sizeof(uint64_t)); 00169 *reinterpret_cast<uint64_t *>(pDestData) = 00170 htonll(*reinterpret_cast<uint64_t const *>(value.pData)); 00171 }
| bool AttributeAccessorImpl::unmarshalNullableValue | ( | TupleAccessor const & | tupleAccessor, |
|---|---|---|---|
| TupleDatum & | value | ||
| ) | const [inline, inherited] |
Tests the null indicator for this attribute in the tuple's null bit array.
Parameters:
| tupleAccessor | containing TupleAccessor set up with the current tuple image to be accessed |
|---|---|
| value | receives the null bit |
Returns:
true if value is null; false otherwise
Definition at line 60 of file AttributeAccessorImpl.h.
References TupleAccessor::getBitFields(), and TupleDatum::pData.
00062 { 00063 if (tupleAccessor.getBitFields()[iNullBit]) { 00064 value.pData = NULL; 00065 return true; 00066 } else { 00067 return false; 00068 } 00069 }
Member Data Documentation
The documentation for this class was generated from the following file:
- /home/pub/open/dev/fennel/tuple/AttributeAccessorImpl.h
