// get number of cameras available
    virtual int32_t getNumberOfCameras()
    {
        Parcel data, reply;
        data.writeInterfaceToken(ICameraService::getInterfaceDescriptor());
        remote()->transact(BnCameraService::GET_NUMBER_OF_CAMERAS, data, &reply);

        if (readExceptionCode(reply)) return 0;
        return reply.readInt32();
    }
    virtual status_t removeListener(const sp<ICameraServiceListener>& listener)
    {
        Parcel data, reply;
        data.writeInterfaceToken(ICameraService::getInterfaceDescriptor());
        data.writeStrongBinder(listener->asBinder());
        remote()->transact(BnCameraService::REMOVE_LISTENER, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        return reply.readInt32();
    }
Example #3
0
 virtual status_t unRegisterCamera1Device(NSCam::ICamDevice *device)
 {
     Parcel data, reply;
     data.writeInterfaceToken(IMMSdkService::getInterfaceDescriptor());
     //data.writePointer(reinterpret_cast<intptr_t>(device)); 
     data.write(reinterpret_cast<void*>(device), sizeof(NSCam::ICamDevice *)); 
     remote()->transact(BnMMSdkService::UNREGISTER_CAMERA_1_DEVICE, data, &reply);
     if (readExceptionCode(reply)) return -EPROTO;
     status_t status = reply.readInt32(); 
     return status; 
 }
Example #4
0
    virtual status_t disconnectHeartrate()
    {
        Parcel data, reply;
        data.writeInterfaceToken(IMMSdkService::getInterfaceDescriptor());
        remote()->transact(BnMMSdkService::DISCONNECT_HEARTRATE, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        status_t status = reply.readInt32(); 
 
        return status;
    }
Example #5
0
 virtual status_t connectImageTransformUser(sp<NSImageTransform::IImageTransformUser>& client)
 {
     Parcel data, reply;
     data.writeInterfaceToken(IMMSdkService::getInterfaceDescriptor());
     remote()->transact(BnMMSdkService::CONNECT_IMAGETRANSFORMUSER, data, &reply);
     
     if (readExceptionCode(reply)) return -EPROTO;
     status_t status = reply.readInt32();
     if (reply.readInt32() != 0)
     {
         client = interface_cast<NSImageTransform::IImageTransformUser>(reply.readStrongBinder()); 
     }
     return status;
 }
Example #6
0
    virtual status_t connectFeatureManager(sp<NSCam::IFeatureManager> & featureManager)
    {
        Parcel data, reply;
        data.writeInterfaceToken(IMMSdkService::getInterfaceDescriptor());
        remote()->transact(BnMMSdkService::GET_MMSDK_FEAUTRE_MANAGER, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        status_t status = reply.readInt32(); 
        if (reply.readInt32() != 0)
        {
            featureManager = interface_cast<NSCam::IFeatureManager>(reply.readStrongBinder());             
        }
 
        return status;
    }
Example #7
0
    virtual status_t connectHeartrate(sp<NSHeartrate::IHeartrateUser>& client)
    {
        Parcel data, reply;
        data.writeInterfaceToken(IMMSdkService::getInterfaceDescriptor());
        remote()->transact(BnMMSdkService::CONNECT_HEARTRATE, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        status_t status = reply.readInt32(); 
        if (reply.readInt32() != 0)
        {
            client = interface_cast<NSHeartrate::IHeartrateUser>(reply.readStrongBinder());             
        }
 
        return status;
    }
Example #8
0
    virtual status_t connectEffect(String16 const &clientName, sp<NSEffect::IEffectUser>& client )
    {
        Parcel data, reply;
        data.writeInterfaceToken(IMMSdkService::getInterfaceDescriptor());
        data.writeString16(clientName); 
        remote()->transact(BnMMSdkService::CONNECT_EFFECT, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        status_t status = reply.readInt32();
        if (reply.readInt32() != 0)
        {
            client = interface_cast<NSEffect::IEffectUser>(reply.readStrongBinder()); 
        }
        return status;
    }
    // get information about a camera
    virtual status_t getCameraInfo(int cameraId,
                                   struct CameraInfo* cameraInfo) {
        Parcel data, reply;
        data.writeInterfaceToken(ICameraService::getInterfaceDescriptor());
        data.writeInt32(cameraId);
        remote()->transact(BnCameraService::GET_CAMERA_INFO, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        status_t result = reply.readInt32();
        if (reply.readInt32() != 0) {
            cameraInfo->facing = reply.readInt32();
            cameraInfo->orientation = reply.readInt32();
        }
        return result;
    }
    // connect to camera service (pro client)
    virtual status_t connectPro(const sp<IProCameraCallbacks>& cameraCb, int cameraId,
                                const String16 &clientPackageName, int clientUid,
                                /*out*/
                                sp<IProCameraUser>& device)
    {
        Parcel data, reply;
        data.writeInterfaceToken(ICameraService::getInterfaceDescriptor());
        data.writeStrongBinder(cameraCb->asBinder());
        data.writeInt32(cameraId);
        data.writeString16(clientPackageName);
        data.writeInt32(clientUid);
        remote()->transact(BnCameraService::CONNECT_PRO, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        status_t status = reply.readInt32();
        if (reply.readInt32() != 0) {
            device = interface_cast<IProCameraUser>(reply.readStrongBinder());
        }
        return status;
    }
    // get camera characteristics (static metadata)
    virtual status_t getCameraCharacteristics(int cameraId,
                                              CameraMetadata* cameraInfo) {
        Parcel data, reply;
        data.writeInterfaceToken(ICameraService::getInterfaceDescriptor());
        data.writeInt32(cameraId);
        remote()->transact(BnCameraService::GET_CAMERA_CHARACTERISTICS, data, &reply);

        if (readExceptionCode(reply)) return -EPROTO;
        status_t result = reply.readInt32();

        CameraMetadata out;
        if (reply.readInt32() != 0) {
            out.readFromParcel(&reply);
        }

        if (cameraInfo != NULL) {
            cameraInfo->swap(out);
        }

        return result;
    }