1335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood/*
2335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * Copyright (C) 2010 The Android Open Source Project
3335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood *
4335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * Licensed under the Apache License, Version 2.0 (the "License");
5335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * you may not use this file except in compliance with the License.
6335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * You may obtain a copy of the License at
7335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood *
8335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood *      http://www.apache.org/licenses/LICENSE-2.0
9335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood *
10335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * Unless required by applicable law or agreed to in writing, software
11335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * distributed under the License is distributed on an "AS IS" BASIS,
12335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * See the License for the specific language governing permissions and
14335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood * limitations under the License.
15335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood */
16335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
17335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood#ifndef _MTP_STORAGE_INFO_H
18335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood#define _MTP_STORAGE_INFO_H
19335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
20335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood#include "MtpTypes.h"
21335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
22335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwoodnamespace android {
23335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
24335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwoodclass MtpDataPacket;
25335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
26335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwoodclass MtpStorageInfo {
27335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwoodpublic:
28335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    MtpStorageID        mStorageID;
29335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    uint16_t            mStorageType;
30335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    uint16_t            mFileSystemType;
31335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    uint16_t            mAccessCapability;
32335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    uint64_t            mMaxCapacity;
33335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    uint64_t            mFreeSpaceBytes;
34335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    uint32_t            mFreeSpaceObjects;
35335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    char*               mStorageDescription;
36335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    char*               mVolumeIdentifier;
37335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
38335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwoodpublic:
39335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood                        MtpStorageInfo(MtpStorageID id);
40335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    virtual             ~MtpStorageInfo();
41335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
42335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    void                read(MtpDataPacket& packet);
43335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
44335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood    void                print();
45335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood};
46335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
47335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood}; // namespace android
48335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood
49335dd2be955607f2632eabc25045857f2cc8b674Mike Lockwood#endif // _MTP_STORAGE_INFO_H
50