xml_stream_chunk< T > Struct Template Reference
Collaboration diagram for xml_stream_chunk< T >:
[legend]

## Public Member Functions

| xml_stream_chunk ()

## Static Public Member Functions

static xml_stream_chunk * | create ()
static void | destroy (void *ptr)

## Public Attributes

xml_stream_chunk * | next
size_t | size
T | data [xml_memory_page_size/sizeof(T)]

## Detailed Description

### template<typename T>
struct xml_stream_chunk< T >

Definition at line 3805 of file pugixml.cpp.

## Constructor & Destructor Documentation

## xml_stream_chunk()

template<typename T >

xml_stream_chunk< T >::xml_stream_chunk | ( |  | ) |

inline

Definition at line 3827 of file pugixml.cpp.

: next(0), size(0)
{
}

Referenced by xml_stream_chunk< T >::create().

## Member Function Documentation

## create()

template<typename T >

static xml_stream_chunk* xml_stream_chunk< T >::create | ( |  | ) |

inline static

Definition at line 3807 of file pugixml.cpp.

{
void* memory = xml_memory::allocate(sizeof(xml_stream_chunk));
return new (memory) xml_stream_chunk();
}

References xml_memory_management_function_storage< T >::allocate, and xml_stream_chunk< T >::xml_stream_chunk().

Referenced by load_stream_data_noseek().

## destroy()

template<typename T >

static void xml_stream_chunk< T >::destroy | ( | void * | ptr | ) |

inline static

Definition at line 3814 of file pugixml.cpp.

{
xml_stream_chunk* chunk = static_cast<xml_stream_chunk*>(ptr);
// free chunk chain
while (chunk)
{
xml_stream_chunk* next = chunk->next;
xml_memory::deallocate(chunk);
chunk = next;
}
}

References xml_memory_management_function_storage< T >::deallocate, and xml_stream_chunk< T >::next.

## Member Data Documentation

## data

template<typename T >

T xml_stream_chunk< T >::data[xml_memory_page_size/sizeof(T)]

Definition at line 3834 of file pugixml.cpp.

Referenced by load_stream_data_noseek().

## next

template<typename T >

xml_stream_chunk* xml_stream_chunk< T >::next

Definition at line 3831 of file pugixml.cpp.

Referenced by xml_stream_chunk< T >::destroy(), and load_stream_data_noseek().

## size

template<typename T >

size_t xml_stream_chunk< T >::size

Definition at line 3832 of file pugixml.cpp.

Referenced by load_stream_data_noseek().

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

- pugixml.cpp

xml_stream_chunk
Definition: pugixml.cpp:3805
xml_stream_chunk::xml_stream_chunk
xml_stream_chunk()
Definition: pugixml.cpp:3827
xml_memory_management_function_storage::deallocate
static deallocation_function deallocate
Definition: pugixml.cpp:164
xml_memory_management_function_storage::allocate
static allocation_function allocate
Definition: pugixml.cpp:163
xml_stream_chunk::size
size_t size
Definition: pugixml.cpp:3832
xml_stream_chunk::next
xml_stream_chunk * next
Definition: pugixml.cpp:3831