00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file Flag_Manip.h 00006 * 00007 * Flag_Manip.h,v 1.12 2005/10/28 16:14:52 ossama Exp 00008 * 00009 * This class includes the functions used for the Flag Manipulation. 00010 * 00011 * @author Priyanka Gontla <pgontla@doc.ece.uci.edu> 00012 */ 00013 //============================================================================= 00014 00015 #ifndef ACE_FLAG_MANIP_H 00016 #define ACE_FLAG_MANIP_H 00017 00018 #include /**/ "ace/pre.h" 00019 00020 #include "ace/ACE_export.h" 00021 00022 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00023 # pragma once 00024 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00025 00026 #include "ace/Global_Macros.h" 00027 #include "ace/os_include/os_fcntl.h" /* For values passed to these methods */ 00028 00029 #if defined (ACE_EXPORT_MACRO) 00030 # undef ACE_EXPORT_MACRO 00031 #endif 00032 #define ACE_EXPORT_MACRO ACE_Export 00033 00034 ACE_BEGIN_VERSIONED_NAMESPACE_DECL 00035 00036 namespace ACE 00037 { 00038 // = Set/get/clear various flags related to I/O HANDLE. 00039 /// Set flags associated with @a handle. 00040 extern ACE_Export int set_flags (ACE_HANDLE handle, 00041 int flags); 00042 00043 /// Clear flags associated with @a handle. 00044 extern ACE_Export int clr_flags (ACE_HANDLE handle, 00045 int flags); 00046 00047 /// Return the current setting of flags associated with @a handle. 00048 ACE_NAMESPACE_INLINE_FUNCTION int get_flags (ACE_HANDLE handle); 00049 } 00050 00051 ACE_END_VERSIONED_NAMESPACE_DECL 00052 00053 #if defined (__ACE_INLINE__) 00054 #include "ace/Flag_Manip.inl" 00055 #endif /* __ACE_INLINE__ */ 00056 00057 #include /**/ "ace/post.h" 00058 #endif /* ACE_FLAG_MANIP_H */