ttg 1.0.0-alpha
Overview
User Guide
Programmer Guides
Source Reference
Modules
Namespace List
Class List
ttg
ttg
serialization
splitmd_data_descriptor.h
Go to the documentation of this file.
1
#ifndef TTG_SERIALIZATION_SPLITMD_DATA_DESCRIPTOR_H
2
#define TTG_SERIALIZATION_SPLITMD_DATA_DESCRIPTOR_H
3
4
#include <type_traits>
5
#include "
ttg/util/meta.h
"
6
#include "
ttg/util/iovec.h
"
7
8
namespace
ttg
{
9
34
template
<
typename
T>
35
struct
SplitMetadataDescriptor
;
36
37
/* Trait signalling whether metadata and data payload can be transfered separately */
38
template
<
typename
T,
typename
Enabler =
void
>
39
struct
has_split_metadata
: std::false_type {};
40
41
template
<
typename
T>
42
struct
has_split_metadata
<
43
T,
ttg
::
meta::void_t
<decltype(std::declval<SplitMetadataDescriptor<T>>().get_metadata(std::declval<T>()))>>
44
: std::true_type {};
45
46
}
// namespace ttg
47
48
#endif
// TTG_SERIALIZATION_SPLITMD_DATA_DESCRIPTOR_H
iovec.h
meta.h
ttg::meta::void_t
void void_t
Definition:
meta.h:23
ttg
top-level TTG namespace contains runtime-neutral functionality
Definition:
keymap.h:8
ttg::SplitMetadataDescriptor
Definition:
splitmd_data_descriptor.h:35
ttg::has_split_metadata
Definition:
splitmd_data_descriptor.h:39
Generated at Wed Nov 20 2024 15:04:55 for
ttg
1.0.0-alpha by
1.9.1