hal_class
2024-12-26 00:00:59 0 举报
ss
作者其他创作
大纲/内容
handler##Factory
+ createInstance(params):V4l2AdapterInterface*重写
HosV4L2Dev
v4l2Handle_:V4l2AdapterInterface*
open()ioctl()mmap()munmap()poll()close()
V4l2AdapterInterface
+ name_:const char *
open(params) = 0 ioctl(params) = 0 mmap() =0munmap(params) = 0 poll(params) = 0 close() =0write_i2c_t() read_i2c()
继承
UnisocV4l2AdapterImpl
+ name_:string
v4l2camera_load_lib()v4l2camera_init()callback_malloc()v4l2camera_cb()callback_free()iommu_is_enabled()get_preview_buffer_id_for_fd()HandleStartPreview()callback_preview_malloc()
组合
V4l2Client
create(params):V4l2AdapterInterface*:创建接口类V4l2AdapterregisterType(params)name()createInstance::V4l2AdapterInterface*
继承
UnisocV4l2Adapter
+ oem_dev:oem_module_t+ device:std::list<device_info>- camera_num:int
+ sensorGetPhysicalSnsNum(params):- v4l2camera_load_lib(params)- open()ioctl()mmap()munmap()poll()close()write_i2c_t()read_i2c()getAdapterImpl
V4l2Adapter
open()ioctl()mmap()munmap()poll()close()
1.REGISTER_V4L2_HANDLER(UnisocV4l2Adapter);2.生成模块静态对象,初始化V4l2Client父类3. 在构造函数中复制V4l2Client定义全局指针变量。
OEM_MODULE_INFO_SYM
+ tag: uint32_tops: oem_ops_t //oem 入口结构体dso: void* //oem haldle
device_info结构体
void *start; int fd; UnisocV4l2AdapterImpl *AdapterImpl;
0 条评论
下一页