mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-23 01:21:42 +00:00
Add methods to get property name and enumerate properties.
Also add method to remove property by handle.
This commit is contained in:
@@ -9,9 +9,20 @@
|
||||
|
||||
using namespace cs;
|
||||
|
||||
std::vector<VideoProperty> VideoSource::EnumerateProperties() const {
|
||||
std::vector<VideoProperty> properties;
|
||||
llvm::SmallVector<CS_Property, 32> handles;
|
||||
CS_Status status = 0;
|
||||
EnumerateSourceProperties(m_handle, handles, &status);
|
||||
properties.reserve(handles.size());
|
||||
for (int handle : handles)
|
||||
properties.emplace_back(VideoProperty{handle});
|
||||
return properties;
|
||||
}
|
||||
|
||||
std::vector<VideoSource> VideoSource::EnumerateSources() {
|
||||
std::vector<VideoSource> sources;
|
||||
llvm::SmallVector<int, 16> handles;
|
||||
llvm::SmallVector<CS_Source, 16> handles;
|
||||
CS_Status status = 0;
|
||||
::cs::EnumerateSources(handles, &status);
|
||||
sources.reserve(handles.size());
|
||||
@@ -22,7 +33,7 @@ std::vector<VideoSource> VideoSource::EnumerateSources() {
|
||||
|
||||
std::vector<VideoSink> VideoSink::EnumerateSinks() {
|
||||
std::vector<VideoSink> sinks;
|
||||
llvm::SmallVector<int, 16> handles;
|
||||
llvm::SmallVector<CS_Sink, 16> handles;
|
||||
CS_Status status = 0;
|
||||
::cs::EnumerateSinks(handles, &status);
|
||||
sinks.reserve(handles.size());
|
||||
|
||||
Reference in New Issue
Block a user