blob: 22c9c352452ea331e3cab2a9eb16c8b8e9db14a2 [file] [log] [blame]
// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef PLATFORM_CROS_CHROMEOS_IMAGEBURN_H_
#define PLATFORM_CROS_CHROMEOS_IMAGEBURN_H_
#include <string>
#include <base/basictypes.h>
namespace chromeos {
struct BurnStatus{
const char* target_path;
int64 amount_burnt;
int64 total_size;
const char* error;
};
enum BurnEventType{
BURN_STARTED,
BURN_UPDATED,
BURN_CANCELED,
BURN_COMPLETE
};
class OpaqueBurnStatusConnection;
typedef OpaqueBurnStatusConnection* BurnStatusConnection;
// The expected callback signature that will be provided by the client who
// calls MonitorBurnStatus. Object given while calling MonitorBurnStatus, status
// of burning process and burning event will be passed when calling a callback.
typedef void(*BurnMonitor)(void*,
const BurnStatus&,
BurnEventType);
} // namespace chromeos
#endif // PLATFORM_CROS_CHROMEOS_IMAGEBURN_H_