PDI 1.8.0-alpha.2024-08-11

the PDI data interface

PDI::Reference_base::Referenced_data Struct Reference

A descriptor for data on which references can point. More...

Public Member Functions

 Referenced_data (std::shared_ptr< Referenced_buffer > buffer, void *data, Datatype_sptr type)
 Constructs a new data descriptor from an already referenced buffer.
 
 Referenced_data (void *data, std::function< void(void *)> freefunc, Datatype_sptr type, bool readable, bool writable)
 Constructs a new data descriptor.
 
 Referenced_data ()=delete
 
 Referenced_data (const Referenced_data &)=delete
 
 Referenced_data (Referenced_data &&)=delete
 

Public Attributes

std::shared_ptr< Referenced_bufferm_buffer
 The buffer in which the data lives.
 
void * m_data
 In-memory location of the data.
 
Datatype_sptr m_type
 Type of the data.
 

Detailed Description

A descriptor for data on which references can point.

The content type is handled at this granularity

Constructor & Destructor Documentation

◆ Referenced_data() [1/5]

PDI::Reference_base::Referenced_data::Referenced_data ( std::shared_ptr< Referenced_buffer buffer,
void *  data,
Datatype_sptr  type 
)
inline

Constructs a new data descriptor from an already referenced buffer.

Parameters
bufferthe buffer containing the data
datathe data location
typethe type of the data

◆ Referenced_data() [2/5]

PDI::Reference_base::Referenced_data::Referenced_data ( void *  data,
std::function< void(void *)>  freefunc,
Datatype_sptr  type,
bool  readable,
bool  writable 
)
inline

Constructs a new data descriptor.

Parameters
datathe data location
freefuncthe function to use to free the data buffer
typethe type of the data
readablethe maximum allowed access to the underlying content
writablethe maximum allowed access to the underlying content

◆ Referenced_data() [3/5]

PDI::Reference_base::Referenced_data::Referenced_data ( )
delete

◆ Referenced_data() [4/5]

PDI::Reference_base::Referenced_data::Referenced_data ( const Referenced_data )
delete

◆ Referenced_data() [5/5]

PDI::Reference_base::Referenced_data::Referenced_data ( Referenced_data &&  )
delete

Member Data Documentation

◆ m_buffer

std::shared_ptr<Referenced_buffer> PDI::Reference_base::Referenced_data::m_buffer
mutable

The buffer in which the data lives.

◆ m_data

void* PDI::Reference_base::Referenced_data::m_data

In-memory location of the data.

◆ m_type

Datatype_sptr PDI::Reference_base::Referenced_data::m_type

Type of the data.


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