/usr/include/oce/OSD_MailBox.hxx is in liboce-foundation-dev 0.15-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 | // This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to
// this header file considered to be the "object code" form of the original source.
#ifndef _OSD_MailBox_HeaderFile
#define _OSD_MailBox_HeaderFile
#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_DefineAlloc_HeaderFile
#include <Standard_DefineAlloc.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _TCollection_AsciiString_HeaderFile
#include <TCollection_AsciiString.hxx>
#endif
#ifndef _OSD_Function_HeaderFile
#include <OSD_Function.hxx>
#endif
#ifndef _OSD_Error_HeaderFile
#include <OSD_Error.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
class Standard_ConstructionError;
class Standard_NullObject;
class OSD_OSDError;
class Standard_ProgramError;
class TCollection_AsciiString;
//! Establishes a mailbox with VMS-like-features and with <br>
//! asynchronous functions. <br>
//! The mail boxes are used to communicate asynchronously <br>
//! between processes. <br>
//! Basically MailBox facilities provide tools to communicate <br>
//! between a client process and a server process. <br>
//! The client process puts data/requests into the mail-box and <br>
//! the server process gets these data/requests. In this context <br>
//! client and server must run on the same machine. <br>
//! Warning: On VMS, you need TMPMBX privilege. <br>
class OSD_MailBox {
public:
DEFINE_STANDARD_ALLOC
//! To be used with 'Open'. <br>
//! It just allocates room for 'myName'. <br>
//! This is for a client process. <br>
Standard_EXPORT OSD_MailBox();
//! Instantiates MailBox object with a name, size required <br>
//! and a function to read mail boxes asynchronously. <br>
//! Each process working with the same MailBox must use <br>
//! a common known access : the mail-box's name. <br>
//! <br>
//! This is for a server process. <br>
//! Raises ConstructionError when the name is not composed by <br>
//! characters in range of ' ' .. '~'. <br>
//! Raises NullObject when Async_function is a null function <br>
//! pointer <br>
//! Raises ProgramError when Size has a negative or null value. <br>
Standard_EXPORT OSD_MailBox(const TCollection_AsciiString& name,const Standard_Integer Size,const OSD_Function& Async_function);
//! Builds (physically) <me> into system. <br>
//! <me> is created and ready to run. <br>
//! This can be seen as an asynchronous server. <br>
Standard_EXPORT void Build() ;
//! Opens mail box, and is ready to communicate with an <br>
//! already created mailbox. <br>
//! Raises NullObject when the name is a null string. <br>
//! Raises ConstructionError when the name contains characters not <br>
//! in range of ' '...'~'. <br>
//! Raises ProgramError when the mail box has a null size. <br>
//! This can be seen as a client. <br>
Standard_EXPORT void Open(const TCollection_AsciiString& name,const Standard_Integer Size) ;
//! Removes the mail box from system. <br>
//! This is used only by server process ! <br>
//! Raises ProgramError when the mail box is already deleted. <br>
Standard_EXPORT void Delete() ;
//! Writes a message of specified length into mail box. <br>
//! <Message> is used as a buffer, not as a common string. <br>
//! So this can be not null terminated like a 'char *'. <br>
//! This is why <Length> is useful. <br>
//! Raises ProgramError when the length of the data is either <br>
//! negative or zero. <br>
//! <br>
Standard_EXPORT void Write(const TCollection_AsciiString& Message,const Standard_Integer Length) ;
//! Returns TRUE if an error occurs <br>
Standard_EXPORT Standard_Boolean Failed() const;
//! Resets error counter to zero <br>
Standard_EXPORT void Reset() ;
//! Raises OSD_Error <br>
Standard_EXPORT void Perror() ;
//! Returns error number if 'Failed' is TRUE. <br>
Standard_EXPORT Standard_Integer Error() const;
protected:
private:
Standard_Integer myId;
TCollection_AsciiString myName;
Standard_Integer mySize;
OSD_Function myFunc;
OSD_Error myError;
};
// other Inline functions and methods (like "C++: function call" methods)
#endif
|