VirtualBox

source: vbox/trunk/src/VBox/Main/include/DrvAudioRec.h

Last change on this file was 105605, checked in by vboxsync, 6 weeks ago

Recording/Main: Renaming: Dropped the superfluous "Settings" suffix of the settings namespace recording classes. This makes those classes easier to find, also for editors which don't support namespace handling, as the same class names were used for the actual implementation classes (i.e. RecordingSettingsImpl.cpp -> RecordingSettings). No functional changes.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.0 KB
RevLine 
[53442]1/* $Id: DrvAudioRec.h 105605 2024-08-06 14:00:56Z vboxsync $ */
2/** @file
[65197]3 * VirtualBox driver interface video recording audio backend.
[53442]4 */
5
6/*
[98103]7 * Copyright (C) 2017-2023 Oracle and/or its affiliates.
[53442]8 *
[96407]9 * This file is part of VirtualBox base platform packages, as
10 * available from https://www.virtualbox.org.
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation, in version 3 of the
15 * License.
16 *
17 * This program is distributed in the hope that it will be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, see <https://www.gnu.org/licenses>.
24 *
25 * SPDX-License-Identifier: GPL-3.0-only
[53442]26 */
27
[76562]28#ifndef MAIN_INCLUDED_DrvAudioRec_h
29#define MAIN_INCLUDED_DrvAudioRec_h
[76487]30#ifndef RT_WITHOUT_PRAGMA_ONCE
31# pragma once
32#endif
[53442]33
34#include <VBox/com/ptr.h>
[75251]35#include <VBox/settings.h>
[53442]36#include <VBox/vmm/pdmdrv.h>
37#include <VBox/vmm/pdmifs.h>
38
[70563]39#include "AudioDriver.h"
[75344]40#include "Recording.h"
[70563]41
42using namespace com;
43
[53442]44class Console;
45
[70563]46class AudioVideoRec : public AudioDriver
[53442]47{
48
49public:
50
51 AudioVideoRec(Console *pConsole);
52 virtual ~AudioVideoRec(void);
53
54public:
55
56 static const PDMDRVREG DrvReg;
57
58public:
59
[105605]60 int applyConfiguration(const settings::Recording &Settings);
[74955]61
62public:
63
[68895]64 static DECLCALLBACK(int) drvConstruct(PPDMDRVINS pDrvIns, PCFGMNODE pCfg, uint32_t fFlags);
[53442]65 static DECLCALLBACK(void) drvDestruct(PPDMDRVINS pDrvIns);
[88382]66 static DECLCALLBACK(void) drvPowerOff(PPDMDRVINS pDrvIns);
[53442]67
68private:
69
[93444]70 virtual int configureDriver(PCFGMNODE pLunCfg, PCVMMR3VTABLE pVMM) RT_OVERRIDE;
[70563]71
[53442]72 /** Pointer to the associated video recording audio driver. */
[105605]73 struct DRVAUDIORECORDING *mpDrv;
[96175]74 /** Recording settings used for configuring the driver. */
[105605]75 struct settings::Recording mSettings;
[53442]76};
77
[76562]78#endif /* !MAIN_INCLUDED_DrvAudioRec_h */
[53442]79
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette