#pragma once #include #include /** * Enumeration of the possible pixel formats the grabber can be set to */ enum PixelFormat { PIXELFORMAT_YUYV, PIXELFORMAT_UYVY, PIXELFORMAT_BGR16, PIXELFORMAT_BGR24, PIXELFORMAT_RGB32, PIXELFORMAT_BGR32, PIXELFORMAT_NO_CHANGE }; inline PixelFormat parsePixelFormat(std::string pixelFormat) { // convert to lower case std::transform(pixelFormat.begin(), pixelFormat.end(), pixelFormat.begin(), ::tolower); if (pixelFormat == "yuyv") { return PIXELFORMAT_YUYV; } else if (pixelFormat == "uyvy") { return PIXELFORMAT_UYVY; } else if (pixelFormat == "bgr16") { return PIXELFORMAT_BGR16; } else if (pixelFormat == "bgr24") { return PIXELFORMAT_BGR24; } else if (pixelFormat == "rgb32") { return PIXELFORMAT_RGB32; } else if (pixelFormat == "bgr32") { return PIXELFORMAT_BGR32; } // return the default NO_CHANGE return PIXELFORMAT_NO_CHANGE; }