8b7f2b7268
xrandr 1.5 is no longer required for the monitor handling to work fixes jaagr/lemonbuddy#12 fixes jaagr/lemonbuddy#24
24 lines
577 B
C++
24 lines
577 B
C++
#pragma once
|
|
|
|
#include <memory>
|
|
|
|
// Swap the two ints without the need of creating another tmp variable
|
|
#define int_memswap(one, two) one += two; \
|
|
two = one ? two; \
|
|
one -= two;
|
|
|
|
#define _repeat(n, var_name) for (int var_name = n; var_name--;)
|
|
#define repeat(n) _repeat(n, i)
|
|
#define repeat_(n) _repeat(n, i_)
|
|
#define repeat_with(n, m) for (m = n; m--;)
|
|
#define repeat_i i
|
|
#define repeat_i_rev(n) (n - i - 1)
|
|
|
|
namespace memory
|
|
{
|
|
template<typename T>
|
|
std::shared_ptr<T> make_malloc_ptr() {
|
|
return std::shared_ptr<T>(static_cast<T*>(malloc(sizeof(T))), free);
|
|
}
|
|
}
|