public final class CameraManager extends Object
Constructor and Description |
---|
CameraManager(Context context) |
Modifier and Type | Method and Description |
---|---|
PlanarYUVLuminanceSource |
buildLuminanceSource(byte[] data,
int width,
int height)
A factory method to build the appropriate LuminanceSource object based on the format
of the preview buffers, as described by Camera.Parameters.
|
void |
closeDriver()
Closes the camera driver if still in use.
|
Rect |
getFramingRect()
Calculates the framing rect which the UI should draw to show the user where to place the
barcode.
|
Rect |
getFramingRectInPreview()
Like
getFramingRect() but coordinates are in terms of the preview frame,
not UI / screen. |
void |
openDriver(SurfaceHolder holder)
Opens the camera driver and initializes the hardware parameters.
|
void |
requestAutoFocus(Handler handler,
int message)
Asks the camera hardware to perform an autofocus.
|
void |
requestPreviewFrame(Handler handler,
int message)
A single preview frame will be returned to the handler supplied.
|
void |
setManualFramingRect(int width,
int height)
Allows third party apps to specify the scanning rectangle dimensions, rather than determine
them automatically based on screen resolution.
|
void |
startPreview()
Asks the camera hardware to begin drawing preview frames to the screen.
|
void |
stopPreview()
Tells the camera to stop drawing preview frames.
|
public CameraManager(Context context)
public void openDriver(SurfaceHolder holder) throws IOException
holder
- The surface object which the camera will draw preview frames into.IOException
- Indicates the camera driver failed to open.public void closeDriver()
public void startPreview()
public void stopPreview()
public void requestPreviewFrame(Handler handler, int message)
handler
- The handler to send the message to.message
- The what field of the message to be sent.public void requestAutoFocus(Handler handler, int message)
handler
- The Handler to notify when the autofocus completes.message
- The message to deliver.public Rect getFramingRect()
public Rect getFramingRectInPreview()
getFramingRect()
but coordinates are in terms of the preview frame,
not UI / screen.public void setManualFramingRect(int width, int height)
width
- The width in pixels to scan.height
- The height in pixels to scan.public PlanarYUVLuminanceSource buildLuminanceSource(byte[] data, int width, int height)
data
- A preview frame.width
- The width of the image.height
- The height of the image.