PDI 1.1.0

Data exchange made easy

PDI::Reference_base::Referenced_data Struct Reference

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

Public Member Functions

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

Public Attributes

Referenced_bufferm_buffer
 The buffer in which the data lives. More...
 
void * m_data
 In-memory location of the data. More...
 
Datatype_uptr m_type
 Type of the data. More...
 
int m_owners
 Number of references to this data. More...
 

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 ( Referenced_buffer buffer,
void *  data,
Datatype_uptr  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_uptr  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

◆ ~Referenced_data()

PDI::Reference_base::Referenced_data::~Referenced_data ( )
inline

Member Data Documentation

◆ m_buffer

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_uptr PDI::Reference_base::Referenced_data::m_type

Type of the data.

◆ m_owners

int PDI::Reference_base::Referenced_data::m_owners

Number of references to this data.


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