265 FRIEND_ALL_RUNTIME_CLASSES
273 std::size_t hash(
void)
const;
277 return index_partition;
279 inline FieldSpace get_field_space(
void)
const {
return field_space; }
280 inline RegionTreeID get_tree_id(
bool filter =
true)
const;
281 inline bool exists(
void)
const {
return (tree_did != 0); }
282 inline TypeTag get_type_tag(
void)
const
284 return index_partition.get_type_tag();
286 inline int get_dim(
void)
const {
return index_partition.get_dim(); }
287 bool valid(
void)
const;
289 friend std::ostream& operator<<(
290 std::ostream& os,
const LogicalPartition& lp);
292 DistributedID tree_did;
293 IndexPartition index_partition;
294 FieldSpace field_space;
343 FRIEND_ALL_RUNTIME_CLASSES
351 inline bool exists(
void)
const {
return (impl !=
nullptr); }
374 size_t field_size, FieldID desired_fieldid = LEGION_AUTO_GENERATE_ID,
375 CustomSerdezID serdez_id = 0,
bool local_field =
false,
376 const char* provenance =
nullptr);
379 FieldID desired_fieldid = LEGION_AUTO_GENERATE_ID,
380 CustomSerdezID serdez_id = 0,
bool local_field =
false,
381 const char* provenance =
nullptr);
392 "We are considering removing support for freeing fields"
393 "in a future Legion release. Please contact the Legion developer's "
394 "list if field deletion is important for your application.")
396 FieldID fid, const
bool unordered = false,
397 const
char* provenance =
nullptr);
407 size_t field_size, FieldID desired_fieldid = LEGION_AUTO_GENERATE_ID,
408 CustomSerdezID serdez_id = 0, const
char* provenance =
nullptr);
428 const std::vector<
size_t>& field_sizes,
429 std::vector<FieldID>& resulting_fields, CustomSerdezID serdez_id = 0,
430 bool local_fields = false, const
char* provenance =
nullptr);
432 const std::vector<
Future>& field_sizes,
433 std::vector<FieldID>& resulting_fields, CustomSerdezID serdez_id = 0,
434 bool local_fields = false, const
char* provenance =
nullptr);
445 "We are considering removing support for freeing fields"
446 "in a future
Legion release. Please contact the
Legion developer's "
447 "list if field deletion is important for your application.")
449 const std::set<FieldID>& to_free, const
bool unordered = false,
450 const
char* provenance =
nullptr);
459 const std::vector<
size_t>& field_sizes,
460 std::vector<FieldID>& resulting_fields, CustomSerdezID serdez_id = 0,
461 const
char* provenance =
nullptr);
467 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)