示例#1
0
int NvBufDrv::write(CAMERA_DATA_TYPE_ENUM nvRamId, int sensorDev)
{
    DEF_AutoLock(m_cs);
    int err;
    int u4SensorID;
    err = getSensorID((CAMERA_DUAL_CAMERA_SENSOR_ENUM)sensorDev, u4SensorID);
    if(err!=0)
        return err;
    void* buf;
    err = getMem(nvRamId, (CAMERA_DUAL_CAMERA_SENSOR_ENUM)sensorDev, buf);
    if(err!=0)
        return err;
    int nvSize;
    err = getNvSize(nvRamId, nvSize);
    if(err!=0)
        return err;
    NvramDrvBase* nvDrv;
    nvDrv = NvramDrvBase::createInstance();
    err  = nvDrv->writeNvram(
            (CAMERA_DUAL_CAMERA_SENSOR_ENUM)sensorDev, u4SensorID, nvRamId,
            buf, nvSize    );
    nvDrv->destroyInstance();
    return err;
}