#pragma once #include class Semaphore { public: Semaphore(); ~Semaphore(); void Wait(); void Signal(); private: z_cap_t semaphore_cap_; };