VirtualBox

Ignore:
Timestamp:
Feb 8, 2010 11:08:02 AM (15 years ago)
Author:
vboxsync
Message:

Frontends/VBoxSDL+VBoxHeadless: code cleanup, reorganize code a little.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp

    r26089 r26322  
    7171#define LogError(m,rc) \
    7272    do { \
    73         Log (("VBoxHeadless: ERROR: " m " [rc=0x%08X]\n", rc)); \
    74         RTPrintf ("%s\n", m); \
     73        Log(("VBoxHeadless: ERROR: " m " [rc=0x%08X]\n", rc)); \
     74        RTPrintf("%s\n", m); \
    7575    } while (0)
    7676
     
    9090{
    9191public:
    92     StateChangeEvent (MachineState_T state) : mState (state) {}
     92    StateChangeEvent(MachineState_T state) : mState(state) {}
    9393protected:
    9494    void *handler()
    9595    {
    96         LogFlow (("VBoxHeadless: StateChangeEvent: %d\n", mState));
     96        LogFlow(("VBoxHeadless: StateChangeEvent: %d\n", mState));
    9797        /* post the termination event if the machine has been PoweredDown/Saved/Aborted */
    9898        if (mState < MachineState_Running)
    99             gEventQ->postEvent (NULL);
     99            gEventQ->postEvent(NULL);
    100100        return 0;
    101101    }
     
    275275public:
    276276
    277     ConsoleCallback ()
     277    ConsoleCallback()
    278278    {
    279279#ifndef VBOX_WITH_XPCOM
     
    302302    VBOX_SCRIPTABLE_DISPATCH_IMPL(IConsoleCallback)
    303303
    304     STDMETHOD(OnMousePointerShapeChange) (BOOL visible, BOOL alpha, ULONG xHot, ULONG yHot,
    305                                           ULONG width, ULONG height, BYTE *shape)
    306     {
    307         return S_OK;
    308     }
    309 
    310     STDMETHOD(OnMouseCapabilityChange) (BOOL supportsAbsolute, BOOL needsHostCursor)
     304    STDMETHOD(OnMousePointerShapeChange)(BOOL visible, BOOL alpha, ULONG xHot, ULONG yHot,
     305                                         ULONG width, ULONG height, BYTE *shape)
     306    {
     307        return S_OK;
     308    }
     309
     310    STDMETHOD(OnMouseCapabilityChange)(BOOL supportsAbsolute, BOOL needsHostCursor)
    311311    {
    312312        /* Emit absolute mouse event to actually enable the host mouse cursor. */
     
    328328    }
    329329
    330     STDMETHOD(OnStateChange) (MachineState_T machineState)
    331     {
    332         gEventQ->postEvent (new StateChangeEvent (machineState));
    333         return S_OK;
    334     }
    335 
    336     STDMETHOD(OnExtraDataChange) (BSTR key)
     330    STDMETHOD(OnStateChange)(MachineState_T machineState)
     331    {
     332        gEventQ->postEvent(new StateChangeEvent(machineState));
     333        return S_OK;
     334    }
     335
     336    STDMETHOD(OnExtraDataChange)(BSTR key)
    337337    {
    338338        return S_OK;
     
    344344    }
    345345
    346     STDMETHOD(OnNetworkAdapterChange) (INetworkAdapter *aNetworkAdapter)
    347     {
    348         return S_OK;
    349     }
    350 
    351     STDMETHOD(OnSerialPortChange) (ISerialPort *aSerialPort)
    352     {
    353         return S_OK;
    354     }
    355 
    356     STDMETHOD(OnParallelPortChange) (IParallelPort *aParallelPort)
     346    STDMETHOD(OnNetworkAdapterChange)(INetworkAdapter *aNetworkAdapter)
     347    {
     348        return S_OK;
     349    }
     350
     351    STDMETHOD(OnSerialPortChange)(ISerialPort *aSerialPort)
     352    {
     353        return S_OK;
     354    }
     355
     356    STDMETHOD(OnParallelPortChange)(IParallelPort *aParallelPort)
    357357    {
    358358        return S_OK;
     
    412412    }
    413413
    414     STDMETHOD(OnUSBDeviceStateChange) (IUSBDevice *aDevice, BOOL aAttached,
     414    STDMETHOD(OnUSBDeviceStateChange)(IUSBDevice *aDevice, BOOL aAttached,
    415415                                      IVirtualBoxErrorInfo *aError)
    416416    {
     
    418418    }
    419419
    420     STDMETHOD(OnSharedFolderChange) (Scope_T aScope)
     420    STDMETHOD(OnSharedFolderChange)(Scope_T aScope)
    421421    {
    422422        return S_OK;
     
    437437    }
    438438
    439     STDMETHOD(OnShowWindow) (ULONG64 *winId)
     439    STDMETHOD(OnShowWindow)(ULONG64 *winId)
    440440    {
    441441        /* OnCanShowWindow() always returns FALSE, so this call should never
     
    457457
    458458#ifdef VBOX_WITH_XPCOM
    459 NS_DECL_CLASSINFO (VirtualBoxCallback)
    460 NS_IMPL_THREADSAFE_ISUPPORTS1_CI (VirtualBoxCallback, IVirtualBoxCallback)
    461 NS_DECL_CLASSINFO (ConsoleCallback)
    462 NS_IMPL_THREADSAFE_ISUPPORTS1_CI (ConsoleCallback, IConsoleCallback)
     459NS_DECL_CLASSINFO(VirtualBoxCallback)
     460NS_IMPL_THREADSAFE_ISUPPORTS1_CI(VirtualBoxCallback, IVirtualBoxCallback)
     461NS_DECL_CLASSINFO(ConsoleCallback)
     462NS_IMPL_THREADSAFE_ISUPPORTS1_CI(ConsoleCallback, IConsoleCallback)
    463463#endif
    464464
     
    597597 *  Entry point.
    598598 */
    599 extern "C" DECLEXPORT (int) TrustedMain (int argc, char **argv, char **envp)
     599extern "C" DECLEXPORT(int) TrustedMain(int argc, char **argv, char **envp)
    600600{
    601601#ifdef VBOX_WITH_VRDP
     
    862862        {
    863863            ComPtr <IMachine> m;
    864             rc = virtualBox->FindMachine (Bstr (name), m.asOutParam());
    865             if (FAILED (rc))
    866             {
    867                 LogError ("Invalid machine name!\n", rc);
    868                 break;
    869             }
    870             m->COMGETTER(Id) (id.asOutParam());
    871             AssertComRC (rc);
    872             if (FAILED (rc))
    873                 break;
    874         }
    875 
    876         Log (("VBoxHeadless: Opening a session with machine (id={%s})...\n",
     864            rc = virtualBox->FindMachine(Bstr(name), m.asOutParam());
     865            if (FAILED(rc))
     866            {
     867                LogError("Invalid machine name!\n", rc);
     868                break;
     869            }
     870            m->COMGETTER(Id)(id.asOutParam());
     871            AssertComRC(rc);
     872            if (FAILED(rc))
     873                break;
     874        }
     875
     876        Log(("VBoxHeadless: Opening a session with machine (id={%s})...\n",
    877877              Utf8Str(id).raw()));
    878878
    879879        // open a session
    880         CHECK_ERROR_BREAK(virtualBox, OpenSession (session, id));
     880        CHECK_ERROR_BREAK(virtualBox, OpenSession(session, id));
    881881        fSessionOpened = true;
    882882
    883883        /* get the console */
    884884        ComPtr <IConsole> console;
    885         CHECK_ERROR_BREAK(session, COMGETTER (Console) (console.asOutParam()));
     885        CHECK_ERROR_BREAK(session, COMGETTER(Console)(console.asOutParam()));
    886886
    887887        /* get the machine */
    888888        ComPtr <IMachine> machine;
    889         CHECK_ERROR_BREAK(console, COMGETTER(Machine) (machine.asOutParam()));
     889        CHECK_ERROR_BREAK(console, COMGETTER(Machine)(machine.asOutParam()));
    890890
    891891        ComPtr <IDisplay> display;
    892         CHECK_ERROR_BREAK(console, COMGETTER(Display) (display.asOutParam()));
     892        CHECK_ERROR_BREAK(console, COMGETTER(Display)(display.asOutParam()));
    893893
    894894#ifdef VBOX_FFMPEG
     
    923923                             "you wish to use is supported on your system\n", rcc);
    924924            }
    925             if (RT_SUCCESS(rrc) && (S_OK == rcc))
     925            if (RT_SUCCESS(rrc) && (rcc == S_OK))
    926926            {
    927927                Log2(("VBoxHeadless: Registering framebuffer\n"));
     
    952952            }
    953953#endif /* defined(VBOX_FFMPEG) */
    954             VRDPFramebuffer *pVRDPFramebuffer = new VRDPFramebuffer ();
     954            VRDPFramebuffer *pVRDPFramebuffer = new VRDPFramebuffer();
    955955            if (!pVRDPFramebuffer)
    956956            {
     
    10271027        /* register a callback for machine events */
    10281028        {
    1029             ConsoleCallback *callback = new ConsoleCallback ();
     1029            ConsoleCallback *callback = new ConsoleCallback();
    10301030            callback->AddRef();
    1031             CHECK_ERROR(console, RegisterCallback (callback));
     1031            CHECK_ERROR(console, RegisterCallback(callback));
    10321032            callback->Release();
    1033             if (FAILED (rc))
     1033            if (FAILED(rc))
    10341034                break;
    10351035        }
     
    10401040        BOOL fVRDPEnabled;
    10411041        ComPtr <IVRDPServer> vrdpServer;
    1042         CHECK_ERROR_BREAK(machine, COMGETTER (VRDPServer) (vrdpServer.asOutParam()));
    1043         CHECK_ERROR_BREAK(vrdpServer, COMGETTER(Enabled) (&fVRDPEnabled));
     1042        CHECK_ERROR_BREAK(machine, COMGETTER(VRDPServer)(vrdpServer.asOutParam()));
     1043        CHECK_ERROR_BREAK(vrdpServer, COMGETTER(Enabled)(&fVRDPEnabled));
    10441044
    10451045        if (vrdpEnabled != NULL)
     
    10621062        if (fVRDPEnable)
    10631063        {
    1064             Log (("VBoxHeadless: Enabling VRDP server...\n"));
     1064            Log(("VBoxHeadless: Enabling VRDP server...\n"));
    10651065
    10661066            /* set VRDP port if requested by the user */
     
    10781078            if (!fVRDPEnabled)
    10791079            {
    1080                 CHECK_ERROR_BREAK(vrdpServer, COMSETTER(Enabled) (TRUE));
     1080                CHECK_ERROR_BREAK(vrdpServer, COMSETTER(Enabled)(TRUE));
    10811081            }
    10821082        }
     
    10861086            if (fVRDPEnabled)
    10871087            {
    1088                 CHECK_ERROR_BREAK(vrdpServer, COMSETTER(Enabled) (FALSE));
    1089             }
    1090         }
    1091 #endif
    1092         Log (("VBoxHeadless: Powering up the machine...\n"));
     1088                CHECK_ERROR_BREAK(vrdpServer, COMSETTER(Enabled)(FALSE));
     1089            }
     1090        }
     1091#endif
     1092        Log(("VBoxHeadless: Powering up the machine...\n"));
    10931093
    10941094        ComPtr <IProgress> progress;
    1095         CHECK_ERROR_BREAK(console, PowerUp (progress.asOutParam()));
     1095        CHECK_ERROR_BREAK(console, PowerUp(progress.asOutParam()));
    10961096
    10971097        /* wait for result because there can be errors */
    1098         if (SUCCEEDED(progress->WaitForCompletion (-1)))
     1098        if (SUCCEEDED(progress->WaitForCompletion(-1)))
    10991099        {
    11001100            LONG progressRc;
     
    11201120#endif
    11211121
    1122         Log (("VBoxHeadless: Waiting for PowerDown...\n"));
     1122        Log(("VBoxHeadless: Waiting for PowerDown...\n"));
    11231123
    11241124        Event *e;
    11251125
    1126         while (gEventQ->waitForEvent (&e) && e)
    1127           gEventQ->handleEvent (e);
    1128 
    1129         Log (("VBoxHeadless: event loop has terminated...\n"));
     1126        while (gEventQ->waitForEvent(&e) && e)
     1127          gEventQ->handleEvent(e);
     1128
     1129        Log(("VBoxHeadless: event loop has terminated...\n"));
    11301130
    11311131#ifdef VBOX_FFMPEG
    11321132        if (pFramebuffer)
    11331133        {
    1134             pFramebuffer->Release ();
     1134            pFramebuffer->Release();
    11351135            Log(("Released framebuffer\n"));
    11361136            pFramebuffer = NULL;
     
    11511151         * unregister the callback we've registered before.
    11521152         */
    1153         Log (("VBoxHeadless: Closing the session...\n"));
     1153        Log(("VBoxHeadless: Closing the session...\n"));
    11541154        session->Close();
    11551155    }
     
    11611161    com::Shutdown();
    11621162
    1163     LogFlow (("VBoxHeadless FINISHED.\n"));
     1163    LogFlow(("VBoxHeadless FINISHED.\n"));
    11641164
    11651165    return rc;
     
    11711171 * Main entry point.
    11721172 */
    1173 int main (int argc, char **argv, char **envp)
     1173int main(int argc, char **argv, char **envp)
    11741174{
    11751175    // initialize VBox Runtime
     
    11911191    }
    11921192
    1193     return TrustedMain (argc, argv, envp);
     1193    return TrustedMain(argc, argv, envp);
    11941194}
    11951195#endif /* !VBOX_WITH_HARDENING */
Note: See TracChangeset for help on using the changeset viewer.

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