17 struct StreamProfileImpl;
18 struct StreamProfileListImpl;
22 class VideoStreamProfile;
23 class GyroStreamProfile;
24 class AccelStreamProfile;
29 std::unique_ptr<StreamProfileImpl>
impl_;
74 template <typename T>
bool is();
89 template <typename T> std::shared_ptr<T> as() {
91 throw "unsupported operation, object's type is not require type";
93 return std::static_pointer_cast<T>(std::const_pointer_cast<
StreamProfile>(shared_from_this()));
117 uint32_t fps()
const;
129 uint32_t width()
const;
141 uint32_t height()
const;
209 switch(this->type()) {
229 std::unique_ptr<StreamProfileListImpl>
impl_;
246 uint32_t count() const;
261 const std::shared_ptr<
StreamProfile> getProfile(uint32_t index);
OBFormat
Enumeration value describing the pixel format.
enum OBGyroSampleRate OBAccelSampleRate
OBAccelFullScaleRange
Accelerometer range enumeration.
std::unique_ptr< StreamProfileListImpl > impl_
Provide SDK structure and enumeration constant definition (depending on libobsensor/h/ObTypes.h)
OBGyroFullScaleRange
Enumeration of gyroscope ranges.
bool is()
Check if frame object is compatible with the given type.
OBStreamType
Enumeration value describing the type of data stream.
std::unique_ptr< StreamProfileImpl > impl_
OBGyroSampleRate
Enumeration of IMU sample rate values (gyroscope or accelerometer)