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:

List of all members.

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:


Generated on Mon Jun 22 04:00:32 2009 for Fennel by doxygen 1.5.1