Skip to content

Commit 21f870a

Browse files
committed
display/drm: Use deleter_from_fcn
1 parent dfbb9c4 commit 21f870a

File tree

1 file changed

+9
-26
lines changed

1 file changed

+9
-26
lines changed

src/video_display/drm.cpp

Lines changed: 9 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -71,32 +71,15 @@
7171
#define MOD_NAME "[drm] "
7272

7373
namespace{
74-
struct frame_deleter{ void operator()(video_frame *f){ vf_free(f); } };
75-
using frame_uniq = std::unique_ptr<video_frame, frame_deleter>;
76-
77-
struct drm_connector_deleter{ void operator()(drmModeConnectorPtr c) { drmModeFreeConnector(c); } };
78-
using Drm_connector_uniq = std::unique_ptr<drmModeConnector, drm_connector_deleter>;
79-
80-
struct drm_resources_deleter{ void operator()(drmModeResPtr r) { drmModeFreeResources(r); } };
81-
using Drm_res_uniq = std::unique_ptr<drmModeRes, drm_resources_deleter>;
82-
83-
struct drm_encoder_deleter{ void operator()(drmModeEncoderPtr e) { drmModeFreeEncoder(e); } };
84-
using Drm_encoder_uniq = std::unique_ptr<drmModeEncoder, drm_encoder_deleter>;
85-
86-
struct drm_crtc_deleter{ void operator()(drmModeCrtcPtr c) { drmModeFreeCrtc(c); } };
87-
using Drm_crtc_uniq = std::unique_ptr<drmModeCrtc, drm_crtc_deleter>;
88-
89-
struct drm_plane_res_deleter{ void operator()(drmModePlaneResPtr r) { drmModeFreePlaneResources(r); } };
90-
using Drm_plane_res_uniq = std::unique_ptr<drmModePlaneRes, drm_plane_res_deleter>;
91-
92-
struct drm_plane_deleter{ void operator()(drmModePlanePtr p) { drmModeFreePlane(p); } };
93-
using Drm_plane_uniq = std::unique_ptr<drmModePlane, drm_plane_deleter>;
94-
95-
struct drm_obj_props_deleter{ void operator()(drmModeObjectPropertiesPtr p) { drmModeFreeObjectProperties(p); } };
96-
using Drm_object_properties_uniq = std::unique_ptr<drmModeObjectProperties, drm_obj_props_deleter>;
97-
98-
struct drm_prop_deleter{ void operator()(drmModePropertyPtr p) { drmModeFreeProperty(p); } };
99-
using Drm_property_uniq = std::unique_ptr<drmModePropertyRes, drm_prop_deleter>;
74+
using frame_uniq = std::unique_ptr<video_frame, deleter_from_fcn<vf_free>>;
75+
using Drm_connector_uniq = std::unique_ptr<drmModeConnector, deleter_from_fcn<drmModeFreeConnector>>;
76+
using Drm_res_uniq = std::unique_ptr<drmModeRes, deleter_from_fcn<drmModeFreeResources>>;
77+
using Drm_encoder_uniq = std::unique_ptr<drmModeEncoder, deleter_from_fcn<drmModeFreeEncoder>>;
78+
using Drm_crtc_uniq = std::unique_ptr<drmModeCrtc, deleter_from_fcn<drmModeFreeCrtc>>;
79+
using Drm_plane_res_uniq = std::unique_ptr<drmModePlaneRes, deleter_from_fcn<drmModeFreePlaneResources>>;
80+
using Drm_plane_uniq = std::unique_ptr<drmModePlane, deleter_from_fcn<drmModeFreePlane>>;
81+
using Drm_object_properties_uniq = std::unique_ptr<drmModeObjectProperties, deleter_from_fcn<drmModeFreeObjectProperties>>;
82+
using Drm_property_uniq = std::unique_ptr<drmModePropertyRes, deleter_from_fcn<drmModeFreeProperty>>;
10083

10184
class Fd_uniq{
10285
public:

0 commit comments

Comments
 (0)