16#ifndef __LEGION_ARGUMENT_MAP_H__
17#define __LEGION_ARGUMENT_MAP_H__
19#include "legion/api/future_map.h"
39 : args(
const_cast<void*
>(arg)), arglen(argsize)
44 : args(rhs.args), arglen(rhs.arglen)
47 inline size_t get_size(
void)
const {
return arglen; }
48 inline void* get_ptr(
void)
const {
return args; }
52 return (args == arg.args) && (arglen == arg.arglen);
56 return (args < arg.args) && (arglen < arg.arglen);
99 inline bool operator==(
const ArgumentMap& rhs)
const
101 return (impl == rhs.impl);
103 inline bool operator<(
const ArgumentMap& rhs)
const
105 return (impl < rhs.impl);
107 inline bool exists(
void)
const {
return (impl !=
nullptr); }
123 bool replace =
true);
155 template<
typename PT,
unsigned DIM>
157 const PT point[DIM],
const UntypedBuffer& arg,
bool replace =
false);
163 template<
typename PT,
unsigned DIM>
166 FRIEND_ALL_RUNTIME_CLASSES
167 Internal::ArgumentMapImpl* impl;
169 explicit ArgumentMap(Internal::ArgumentMapImpl* i);
174#include "legion/api/argument_map.inl"
Definition argument_map.h:88
void set_point(const DomainPoint &point, const UntypedBuffer &arg, bool replace=true)
bool remove_point(const DomainPoint &point)
bool remove_point(const PT point[DIM])
bool has_point(const DomainPoint &point)
void set_point_arg(const PT point[DIM], const UntypedBuffer &arg, bool replace=false)
void set_point(const DomainPoint &point, const Future &f, bool replace=true)
UntypedBuffer get_point(const DomainPoint &point) const
Definition future_map.h:36
Definition argument_map.h:35