- Add the real NT Object Callbacks and #ifdef out the ReactOS ones.
[reactos.git] / reactos / include / ndk / halfuncs.h
index 435dfaf..4ad28df 100644 (file)
-/*
- * PROJECT:         ReactOS Native Headers
- * FILE:            include/ndk/halfuncs.h
- * PURPOSE:         Prototypes for exported HAL Functions not defined in DDK/IFS
- * PROGRAMMER:      Alex Ionescu (alex@relsoft.net)
- * UPDATE HISTORY:
- *                  Created 06/10/04
- */
+/*++ NDK Version: 0095
+
+Copyright (c) Alex Ionescu.  All rights reserved.
+
+Header Name:
+
+    halfuncs.h
+
+Abstract:
+
+    Function definitions for the HAL.
+
+Author:
+
+    Alex Ionescu (alex.ionescu@reactos.com)   06-Oct-2004
+
+--*/
+
 #ifndef _HALFUNCS_H
 #define _HALFUNCS_H
 
-/* DEPENDENCIES **************************************************************/
-#include "haltypes.h"
+//
+// Dependencies
+//
+#include <umtypes.h>
+#include <haltypes.h>
 
-/* FUNCTION TYPES ************************************************************/
+#ifndef NTOS_MODE_USER
 
-/* PROTOTYPES ****************************************************************/
+//
+// Display Functions
+//
+NTHALAPI
+BOOLEAN
+NTAPI
+HalQueryDisplayOwnership(
+    VOID
+);
 
+NTHALAPI
 VOID
-STDCALL
-HalAcquireDisplayOwnership(
-    IN PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters
+NTAPI
+HalDisplayString(
+    IN PCHAR String
 );
 
+NTHALAPI
 BOOLEAN
-STDCALL
-HalAllProcessorsStarted(VOID);
+NTAPI
+HalQueryDisplayOwnership(
+    VOID
+);
+
+NTHALAPI
+VOID
+NTAPI
+HalReleaseDisplayOwnership(
+    VOID
+);
 
-NTSTATUS
-STDCALL
-HalAllocateAdapterChannel(
-    IN PADAPTER_OBJECT AdapterObject,
-    IN PWAIT_CONTEXT_BLOCK WaitContextBlock,
-    IN ULONG NumberOfMapRegisters,
-    IN PDRIVER_CONTROL ExecutionRoutine
+//
+// Initialization Functions
+//
+NTHALAPI
+BOOLEAN
+NTAPI
+HalAllProcessorsStarted(
+    VOID
 );
 
-BOOLEAN 
-STDCALL
+NTHALAPI
+VOID
+NTAPI
+HalInitializeProcessor(
+    ULONG ProcessorNumber,
+    PVOID ProcessorStack
+);
+
+NTHALAPI
+BOOLEAN
+NTAPI
+HalInitSystem(
+    ULONG BootPhase,
+    PLOADER_PARAMETER_BLOCK LoaderBlock
+);
+
+NTHALAPI
+VOID
+NTAPI
+HalReturnToFirmware(
+    FIRMWARE_REENTRY Action
+);
+
+NTHALAPI
+BOOLEAN
+NTAPI
+HalStartNextProcessor(
+    ULONG Unknown1,
+    ULONG Unknown2
+);
+
+//
+// Interrupt Functions
+//
+NTHALAPI
+BOOLEAN
+NTAPI
 HalBeginSystemInterrupt(
     ULONG Vector,
     KIRQL Irql,
     PKIRQL OldIrql
 );
 
+NTHALAPI
 BOOLEAN
-STDCALL
+NTAPI
 HalDisableSystemInterrupt(
     ULONG Vector,
     KIRQL Irql
 );
 
-VOID
-STDCALL
-HalDisplayString (
-    IN PCHAR String
-);
-
+NTHALAPI
 BOOLEAN
-STDCALL
+NTAPI
 HalEnableSystemInterrupt(
     ULONG Vector,
     KIRQL Irql,
     KINTERRUPT_MODE InterruptMode
 );
 
+NTHALAPI
 VOID
-STDCALL
+NTAPI
 HalEndSystemInterrupt(
     KIRQL Irql,
     ULONG Vector
 );
 
+NTHALAPI
 BOOLEAN
-STDCALL
+NTAPI
 HalGetEnvironmentVariable(
     PCH Name,
     PCH Value,
     USHORT ValueLength
 );
 
+NTHALAPI
 VOID
-STDCALL
-HalInitializeProcessor(
-    ULONG ProcessorNumber,
-    PVOID ProcessorStack
-);
-
-BOOLEAN
-STDCALL
-HalInitSystem(
-    ULONG BootPhase,
-    PLOADER_PARAMETER_BLOCK LoaderBlock
+NTAPI
+HalReportResourceUsage(
+    VOID
 );
 
-BOOLEAN
-STDCALL
-HalQueryDisplayOwnership(VOID);
-
-VOID
-STDCALL
-HalReportResourceUsage(VOID);
-
+NTHALAPI
 VOID
 FASTCALL
 HalRequestSoftwareInterrupt(
     KIRQL SoftwareInterruptRequested
 );
 
+NTHALAPI
 VOID
-STDCALL
-HalReleaseDisplayOwnership(VOID);
-
-VOID
-STDCALL
-HalReturnToFirmware(
-    FIRMWARE_ENTRY Action
-);
-
-VOID
-STDCALL
+NTAPI
 HalRequestIpi(
     ULONG Unknown
 );
 
-BOOLEAN
-STDCALL
-HalSetEnvironmentVariable(
-    IN PCH Name,
-    IN PCH Value
-);
-
-BOOLEAN
-STDCALL
-HalStartNextProcessor(
-    ULONG Unknown1,
-    ULONG Unknown2
-);
-              
+//
+// I/O Functions
+//
+NTHALAPI
 VOID
-STDCALL
+NTAPI
 IoAssignDriveLetters(
     struct _LOADER_PARAMETER_BLOCK *LoaderBlock,
     PSTRING NtDeviceName,
@@ -146,4 +179,16 @@ IoAssignDriveLetters(
     PSTRING NtSystemPathString
 );
 
+//
+// Environment Functions
+//
+NTHALAPI
+BOOLEAN
+NTAPI
+HalSetEnvironmentVariable(
+    IN PCH Name,
+    IN PCH Value
+);
+
+#endif
 #endif