This document introduces you to the Camera Stub Plug-in library overview.
The purpose of this document is to provides a detailed description about the Camera Stub Plug-in implementation.
The DLL that provides the functionality and the library to which your code must link is identified below.
The Symbian platform no longer supports re-implementation of ECam component. Device creators who re-implement ECam should complete their migration to the ECam plug-in framework. Device creators already using the ECam plug-in framework are unaffected. Clients of the interfaces are also unaffected.
Symbian introduced the plug-in support for ECam from v9.1 onwards. Before that, device creators were supposed to re-implement ecam.cpp, which was effectively reference code.
Device creators who re-implement ECam should use the Symbian-provided implementations. These implementations are available through the affected cpp files. In particular, to complete migration to the ECam plug-in framework, device creators should derive their class from CCameraPlugin instead of CCamera . A resource file also needs to be created so that the specific plug-in gets chosen. Device creators will have to link against ecampluginsupport .
ECamStubplugin is example code that helps in understanding the steps needed to migrate to the plug-in framework, and the API design is described in the ECam Design Onboard Camera API document.
The key classes that make up the Camera Plug-in API is CCameraPlugin .
The Camera Stub Plug-in is used to facilitate the creation of a new Camera Plug-ins component.
The following test code is used as an example to create a new Camera Plug-ins component:
// 10207084.RSS
//
#include “Ecom\RegistryInfo.rh”
#include “EcamUids.hrh”
RESOURCE REGISTRY_INFO theInfo
{
dll_uid = KuidOnboardCameraTestDll;
interfaces =
{
INTERFACE_INFO
{
interface_uid = KuidOnboardCameraPlugin;
implementations =
{
IMPLEMENTATION_INFO
{
implementation_uid = KuidOnboardCameraTestPlugin;
version_no = 2;
display_name =”Ecam Test Plug-in”;
opaque_data = “0;”;
default_data=”*”;
}
};
},
INTERFACE_INFO
{
interface_uid = KuidOnboardCameraInfoPlugin;
implementations =
{
IMPLEMENTATION_INFO
{
implementation_uid = KuidOnboardCameraTestInfo;
version_no = 2;
display_name = “Ecam Test InfoPlugin”;
opaque_data = “0;”;
default_data=”*”;
}
};
}
};
}
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.