260 FRIEND_ALL_RUNTIME_CLASSES
268 std::size_t hash(
void)
const;
272 return index_partition;
274 inline FieldSpace get_field_space(
void)
const {
return field_space; }
275 inline RegionTreeID get_tree_id(
bool filter =
true)
const;
276 inline bool exists(
void)
const {
return (tree_did != 0); }
277 inline TypeTag get_type_tag(
void)
const
279 return index_partition.get_type_tag();
281 inline int get_dim(
void)
const {
return index_partition.get_dim(); }
282 bool valid(
void)
const;
284 friend std::ostream& operator<<(
285 std::ostream& os,
const LogicalPartition& lp);
287 DistributedID tree_did;
288 IndexPartition index_partition;
289 FieldSpace field_space;
338 FRIEND_ALL_RUNTIME_CLASSES
346 inline bool exists(
void)
const {
return (impl !=
nullptr); }
369 size_t field_size, FieldID desired_fieldid = LEGION_AUTO_GENERATE_ID,
370 CustomSerdezID serdez_id = 0,
bool local_field =
false,
371 const char* provenance =
nullptr);
374 FieldID desired_fieldid = LEGION_AUTO_GENERATE_ID,
375 CustomSerdezID serdez_id = 0,
bool local_field =
false,
376 const char* provenance =
nullptr);
387 "We are considering removing support for freeing fields"
388 "in a future Legion release. Please contact the Legion developer's "
389 "list if field deletion is important for your application.")
391 FieldID fid, const
bool unordered = false,
392 const
char* provenance =
nullptr);
402 size_t field_size, FieldID desired_fieldid = LEGION_AUTO_GENERATE_ID,
403 CustomSerdezID serdez_id = 0, const
char* provenance =
nullptr);
423 const std::vector<
size_t>& field_sizes,
424 std::vector<FieldID>& resulting_fields, CustomSerdezID serdez_id = 0,
425 bool local_fields = false, const
char* provenance =
nullptr);
427 const std::vector<
Future>& field_sizes,
428 std::vector<FieldID>& resulting_fields, CustomSerdezID serdez_id = 0,
429 bool local_fields = false, const
char* provenance =
nullptr);
440 "We are considering removing support for freeing fields"
441 "in a future Legion release. Please contact the Legion developer's "
442 "list if field deletion is important for your application.")
444 const std::set<FieldID>& to_free, const
bool unordered = false,
445 const
char* provenance =
nullptr);
454 const std::vector<
size_t>& field_sizes,
455 std::vector<FieldID>& resulting_fields, CustomSerdezID serdez_id = 0,
456 const
char* provenance =
nullptr);
462 Internal::FieldAllocatorImpl* impl;
FieldID allocate_field(size_t field_size, FieldID desired_fieldid=LEGION_AUTO_GENERATE_ID, CustomSerdezID serdez_id=0, bool local_field=false, const char *provenance=nullptr)
void allocate_fields(const std::vector< size_t > &field_sizes, std::vector< FieldID > &resulting_fields, CustomSerdezID serdez_id=0, bool local_fields=false, const char *provenance=nullptr)