#ifndef __TIMES_LOADED #define __TIMES_LOADED 1 /**************************************************************************** ** ** - file access and modification times structure ** ***************************************************************************** ** Header introduced by the ISO POSIX-1 Standard ***************************************************************************** ** * ** HPE CONFIDENTIAL. This software is confidential proprietary software * ** licensed by Hewlett Packard Enterprise Development, LP, and is not * ** authorized to be used, duplicated or disclosed to anyone without the * ** prior written permission of HPE. * ** Copyright 2003 Hewlett Packard Enterprise Development, LP * ** * ** VMS SOFTWARE, INC. CONFIDENTIAL. This software is confidential * ** proprietary software licensed by VMS Software, Inc., and is not * ** authorized to be used, duplicated or disclosed to anyone without * ** the prior written permission of VMS Software, Inc. * ** Copyright 2022-2023 VMS Software, Inc. * ** * ***************************************************************************** */ #pragma __nostandard #include #ifdef __cplusplus extern "C" { #endif /* ** Save the users pointer context */ #if __INITIAL_POINTER_SIZE || defined(__clang__) # pragma __required_pointer_size __save # pragma __required_pointer_size 64 #endif /* ** Member align structures */ #pragma __member_alignment __save #pragma __member_alignment /****************************************************************************** ** ** This header file either defines the ISO POSIX-1 structures and prototypes ** or defines the DEC C specific structures and prototypes. The ISO POSIX-1 ** support was added in OpenVMS V7.0. The user could still access the old ** interface by defining _DECC_V4_SOURCE ** *******************************************************************************/ #if __CRTL_VER >= 70000000 && (defined _POSIX_C_SOURCE || !defined _DECC_V4_SOURCE) /************************************************************************** ** ISO POSIX-1 definitions of structures and prototypes ***************************************************************************/ # ifndef __CLOCK_T # define __CLOCK_T #ifdef __NAMESPACE_STD namespace std { #endif typedef int clock_t; #ifdef __NAMESPACE_STD } /* namespace std */ using std::clock_t; #endif # endif # ifndef __TMS # define __TMS struct tms { clock_t tms_utime; /* user CPU time */ clock_t tms_stime; /* system CPU time */ clock_t tms_cutime; /* user CPU of terminated child processes */ clock_t tms_cstime; /* system CPU of terminated child processes */ }; # endif clock_t times (struct tms *__buffer); #else /************************************************************************** ** DEC C specific (prior to OpenVMS V7.0) ***************************************************************************/ # ifndef __TBUFFER_T # define __TBUFFER_T 1 typedef struct tbuffer { int proc_user_time; int proc_system_time; int child_user_time; int child_system_time; } tbuffer_t; # endif void times (tbuffer_t *__buffer); /* */ #endif /* ** Restore the users pointer context */ #if __INITIAL_POINTER_SIZE || defined(__clang__) # pragma __required_pointer_size __restore #endif #ifdef __cplusplus } #endif #pragma __member_alignment __restore #pragma __standard #endif /* __TIMES_LOADED */