Blender V5.0
BLI_map_slots.hh File Reference

Go to the source code of this file.

Classes

class  blender::SimpleMapSlot< Key, Value >
class  blender::IntrusiveMapSlot< Key, Value, KeyInfo >
struct  blender::DefaultMapSlot< Key, Value >
struct  blender::DefaultMapSlot< Key *, Value >

Namespaces

namespace  blender

Functions

template<typename Src1, typename Src2, typename Dst1, typename Dst2>
void blender::initialize_pointer_pair (Src1 &&src1, Src2 &&src2, Dst1 *dst1, Dst2 *dst2)

Detailed Description

This file contains slot types that are supposed to be used with blender::Map.

Every slot type has to be able to hold a value of type Key, a value of type Value and state information. A map slot has three possible states: empty, occupied and removed.

When a slot is occupied, it stores instances of type Key and Value.

A map slot type has to implement a couple of methods that are explained in SimpleMapSlot. A slot type is assumed to be trivially destructible, when it is not in occupied state. So the destructor might not be called in that case.

Possible Improvements:

  • Implement slot type that stores the hash.

Definition in file BLI_map_slots.hh.