00001 #ifndef __OUC_SXEQ_HH__
00002 #define __OUC_SXEQ_HH__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 class XrdOucSxeq
00014 {
00015 public:
00016
00017 static const int noWait = 0x0001;
00018 static const int Share = 0x0002;
00019 static const int Unlink = 0x0004;
00020 static const int Lock = 0x0008;
00021
00022 int Detach() {int lFD = lokFD; lokFD = -1; return lFD;}
00023
00024 int Release();
00025
00026 static
00027 int Release(int fileD);
00028
00029 int Serialize(int Opts=0);
00030
00031 static
00032 int Serialize(int fileD, int Opts);
00033
00034 int lastError() {return lokRC;}
00035
00036 XrdOucSxeq(int sOpts, const char *path);
00037 XrdOucSxeq(const char *sfx, const char *sfx1=0, const char *Dir="/tmp/");
00038 ~XrdOucSxeq();
00039
00040 private:
00041
00042 char *lokFN;
00043 int lokFD;
00044 int lokUL;
00045 int lokRC;
00046 };
00047 #endif