Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType > Class Template Reference

DescriptorArrayDefine, maintains a vector of descriptors on behalf of derived types. More...

#include <HOCI.h>

Inheritance diagram for Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >:
[legend]
Collaboration diagram for Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >:
[legend]

Public Types

using Base = DescriptorBaseArrayDefine
 
using ValueType = VT
 
- Public Types inherited from Harlinn::OCI::DescriptorBaseArrayDefine
using Base = ArrayDefine
 

Public Member Functions

void Initialize (UInt32 positon) final override
 
virtual const void * Data (size_t index) const noexcept override
 
- Public Member Functions inherited from Harlinn::OCI::DescriptorBaseArrayDefine
 DescriptorBaseArrayDefine () noexcept
 
 DescriptorBaseArrayDefine (const OCI::Statement &statement, size_t size) noexcept
 
- Public Member Functions inherited from Harlinn::OCI::ArrayDefine
size_t Count () const
 
Int16 Indicator (size_t index) const
 
virtual HO_EXPORT bool AsBoolean (size_t index) const
 
virtual HO_EXPORT Byte AsByte (size_t index) const
 
virtual HO_EXPORT SByte AsSByte (size_t index) const
 
virtual HO_EXPORT std::vector< ByteAsBytes (size_t index) const
 
virtual HO_EXPORT Int16 AsInt16 (size_t index) const
 
virtual HO_EXPORT UInt16 AsUInt16 (size_t index) const
 
virtual HO_EXPORT Int32 AsInt32 (size_t index) const
 
virtual HO_EXPORT UInt32 AsUInt32 (size_t index) const
 
virtual HO_EXPORT Int64 AsInt64 (size_t index) const
 
virtual HO_EXPORT UInt64 AsUInt64 (size_t index) const
 
virtual HO_EXPORT float AsSingle (size_t index) const
 
virtual HO_EXPORT double AsDouble (size_t index) const
 
virtual HO_EXPORT DateTime AsDateTime (size_t index) const
 
virtual HO_EXPORT TimeSpan AsTimeSpan (size_t index) const
 
virtual HO_EXPORT WideString AsString (size_t index) const
 
virtual HO_EXPORT Guid AsGuid (size_t index) const
 
virtual HO_EXPORT OCI::ObjectAsObject (size_t index) const
 
virtual HO_EXPORT OCI::CollectionAsCollection (size_t index) const
 
virtual HO_EXPORT LobStream AsStream (size_t index) const
 
- Public Member Functions inherited from Harlinn::OCI::DefineBase
HO_EXPORT void DefineByPos (UInt32 positon, OraType dataType, void *dataAddress, Int64 dataSize, Int16 *indicators, UInt32 *returnLengths=nullptr, UInt16 *returnCodes=nullptr, UInt32 mode=0)
 
const OCI::StatementStatement () const noexcept
 
const OCI::ErrorHandleError () const noexcept final override
 Provides access to the OCIError that will be used for OCI calls for this object.
 
const OCI::ServiceContextServiceContext () const
 
const OCI::EnvironmentEnvironment () const
 
HO_EXPORT void SetLOBPrefetchSize (UInt32 lobPrefetchSize)
 
HO_EXPORT UInt32 LOBPrefetchSize () const
 
HO_EXPORT void SetLOBPrefetchLength (bool value=true)
 
HO_EXPORT bool LOBPrefetchLength () const
 
- Public Member Functions inherited from Harlinn::OCI::HandleBase
constexpr void * Handle () const noexcept
 Provides access to the value of the handle object.
 
constexpr operator bool () const noexcept
 Test if the handle value is assigned.
 
constexpr bool IsValid () const noexcept
 Test if the handle value is assigned.
 
constexpr OCI::HandleType HandleType () const noexcept
 Returns a value identifying the type of the wrapped handle object.
 

Static Public Attributes

static constexpr OCI::HandleType DescriptorType = descriptorType
 
static constexpr OCI::OraType OracleType = oracleType
 

Protected Member Functions

constexpr DescriptorArrayDefine ()
 
 DescriptorArrayDefine (const OCI::Statement &statement, size_t size)
 
 ~DescriptorArrayDefine ()
 
ValueTypeValue (size_t index) const
 
- Protected Member Functions inherited from Harlinn::OCI::DescriptorBaseArrayDefine
HO_EXPORT void ArrayDescriptorFree (void **descriptors, OCI::HandleType descriptorType)
 
- Protected Member Functions inherited from Harlinn::OCI::ArrayDefine
 ArrayDefine () noexcept
 
 ArrayDefine (const OCI::Statement &statement, size_t arraySize)
 
void DefineByPos (UInt32 positon, OraType dataType, void *dataAddress, Int64 dataSize, Int16 *indicators, UInt32 *returnLengths, UInt16 *returnCodes, UInt32 mode)
 
HO_EXPORT void DefineByPos (UInt32 positon, OraType dataType, void *dataAddress, Int64 dataSize, UInt32 *returnLengths=nullptr, UInt16 *returnCodes=nullptr, UInt32 mode=0)
 
- Protected Member Functions inherited from Harlinn::OCI::DefineBase
 DefineBase (const OCI::Statement &statement)
 
constexpr DefineBase () noexcept
 
- Protected Member Functions inherited from Harlinn::OCI::HandleBase
constexpr HandleBase () noexcept
 Default constructor.
 
constexpr HandleBase (OCI::HandleType handleType, void *handle, bool ownsHandle) noexcept
 Constructs a new HandleBase object.
 
 HandleBase (const HandleBase &other)=delete
 
constexpr HandleBase (HandleBase &&other) noexcept
 Move constructor.
 
virtual ~HandleBase ()
 Destructor.
 
constexpr void SetHandle (void *newHandleValue, bool ownsHandle) noexcept
 Assigns the handle value and ownership to this object.
 
constexpr bool OwnsHandle () const noexcept
 Returns true if this object is the owner of the handle value.
 
void * DetachHandle ()
 If this object is the owner of a handle this function rescinds that ownership, and returns the handle value without closing the handle.
 
void DestroyHandle ()
 Destroys the handle if it is owned by this object.
 
HandleBaseoperator= (const HandleBase &other)=delete
 
constexpr HandleBaseoperator= (HandleBase &&other) noexcept
 
constexpr void swap (HandleBase &other) noexcept
 
template<typename Derived >
constexpr void Take (Derived &&derived) noexcept
 Template function used to implement move assignement in derived classes.
 
void InitializeHandle (void *handle, bool ownsHandle)
 Provides a "safe" mechanism for assigning a handle value. This functions throws if a handle value is already assigned to this object.
 
HO_EXPORT Int32 GetAttribute (void *buffer, UInt32 *size, Attribute attribute) const
 Gets the value of an attribute from the handle.
 
HO_EXPORT Int32 SetAttribute (void *buffer, UInt32 size, Attribute attribute) const
 Sets the value of an attribute on the handle.
 
DateTime GetDateTimeAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a DateTime.
 
void SetDateTimeAttribute (Attribute attribute, const DateTime &value) const
 Sets the value of an attribute on the handle as a DateTime.
 
template<WideStringLike StringT = WideString>
StringT GetStringAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a WideString.
 
template<WideStringLike StringT = WideString>
StringT GetStringAttributeFromByteString (Attribute attribute) const
 Gets the value of an attribute from the handle as a WideString For use with attributes that are not returned as UTF-16.
 
template<WideStringLike StringT>
void SetStringAttribute (Attribute attribute, const StringT &value) const
 Sets the value of an attribute on the handle as a WideString.
 
void SetStringAttribute (Attribute attribute, const wchar_t *value, size_t valueLength) const
 
bool GetBooleanAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a bool.
 
void SetBooleanAttribute (Attribute attribute, bool value) const
 Sets the value of an attribute on the handle as a bool.
 
Byte GetByteAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a Byte.
 
void SetByteAttribute (Attribute attribute, Byte value) const
 Sets the value of an attribute on the handle as a Byte.
 
SByte GetSByteAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a SByte.
 
void SetSByteAttribute (Attribute attribute, SByte value) const
 Sets the value of an attribute on the handle as a Byte.
 
Int16 GetInt16Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an Int16.
 
void SetInt16Attribute (Attribute attribute, Int16 value) const
 Sets the value of an attribute on the handle as an Int16.
 
UInt16 GetUInt16Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an UInt16.
 
void SetUInt16Attribute (Attribute attribute, UInt16 value) const
 Sets the value of an attribute on the handle as an UInt16.
 
Int32 GetInt32Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an Int32.
 
void SetInt32Attribute (Attribute attribute, Int32 value) const
 Sets the value of an attribute on the handle as an Int32.
 
UInt32 GetUInt32Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an UInt32.
 
void SetUInt32Attribute (Attribute attribute, UInt32 value) const
 Sets the value of an attribute on the handle as an UInt32.
 
Int64 GetInt64Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an Int64.
 
void SetInt64Attribute (Attribute attribute, Int64 value) const
 Sets the value of an attribute on the handle as an Int64.
 
UInt64 GetUInt64Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an UInt64.
 
void SetUInt64Attribute (Attribute attribute, UInt64 value) const
 Sets the value of an attribute on the handle as an UInt64.
 
void * GetPointerAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a pointer.
 
void SetPointerAttribute (Attribute attribute, void *value) const
 Sets the value of an attribute on the handle as a pointer.
 
OCI::NumberGetNumberAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a pointer to an OCI::Number.
 

Private Attributes

std::vector< ValueType * > data_
 

Additional Inherited Members

- Static Public Member Functions inherited from Harlinn::OCI::ArrayDefine
static HO_EXPORT std::unique_ptr< ArrayDefineCreateDefine (const OCI::Statement &statement, size_t defineSize, const ColumnDescriptor &columnDescriptor, UInt32 positon)
 
- Static Protected Member Functions inherited from Harlinn::OCI::DescriptorBaseArrayDefine
static HO_EXPORT void ArrayDescriptorAlloc (const OCI::Statement &statement, OCI::HandleType descriptorType, size_t size, void **descriptors)
 
- Static Protected Member Functions inherited from Harlinn::OCI::HandleBase
static HO_EXPORT void HandleFree (void *handle, OCI::HandleType handleType) noexcept
 Calls OCIHandleFree to release the handle.
 
- Protected Attributes inherited from Harlinn::OCI::ArrayDefine
std::vector< Int16indicator_
 

Detailed Description

template<typename VT, OCI::HandleType descriptorType, OCI::OraType oracleType>
class Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >

DescriptorArrayDefine, maintains a vector of descriptors on behalf of derived types.

Member Typedef Documentation

◆ Base

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
using Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::Base = DescriptorBaseArrayDefine

◆ ValueType

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
using Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::ValueType = VT

Constructor & Destructor Documentation

◆ DescriptorArrayDefine() [1/2]

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::DescriptorArrayDefine ( )
inlineconstexprprotected

◆ DescriptorArrayDefine() [2/2]

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::DescriptorArrayDefine ( const OCI::Statement & statement,
size_t size )
inlineprotected

◆ ~DescriptorArrayDefine()

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::~DescriptorArrayDefine ( )
inlineprotected

Member Function Documentation

◆ Data()

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
virtual const void * Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::Data ( size_t index) const
inlineoverridevirtualnoexcept

◆ Initialize()

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
void Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::Initialize ( UInt32 positon)
inlinefinaloverridevirtual

◆ Value()

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
ValueType * Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::Value ( size_t index) const
inlineprotected

Member Data Documentation

◆ data_

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
std::vector<ValueType*> Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::data_
private

◆ DescriptorType

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
OCI::HandleType Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::DescriptorType = descriptorType
staticconstexpr

◆ OracleType

template<typename VT , OCI::HandleType descriptorType, OCI::OraType oracleType>
OCI::OraType Harlinn::OCI::DescriptorArrayDefine< VT, descriptorType, oracleType >::OracleType = oracleType
staticconstexpr

The documentation for this class was generated from the following file: