acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
solaris_solaris.h
1#ifndef BASE_SOLARIS_SOLARIS_H
2#define BASE_SOLARIS_SOLARIS_H
3
4
5#pragma once
6
7
8
9#include <wchar.h>
10
11#include "solaris_graphics.h"
12#include "solaris_http_lib.h"
13#include "solaris_http.h"
14#include "solaris_process.h"
15#include "solaris_cross_win_gdi.h"
16#include "solaris_cross_win_file.h"
17#include "solaris_file.h"
18#include "solaris_file_watcher.h"
19//#include "solaris_cairo_keep.h"
20#include "solaris_window_xlib.h"
21
22
23
24#define ENABLE_BINRELOC
25//#include "c_os_binreloc.h"
26
27
28
29::u32 ::get_tick();
30
31
32
33
34#define _fileno fileno
35#define _unlink unlink
36
37
38/*
39#define STATUS_WAIT_0 ((::u32 ) 0x00000000L)
40#define STATUS_ABANDONED_WAIT_0 ((::u32 ) 0x00000080L)
41#define STATUS_USER_APC ((::u32 ) 0x000000C0L)
42#define STATUS_TIMEOUT ((::u32 ) 0x00000102L)
43 */
44
45#define WAIT_FAILED ((::u32 ) 0xFFFFFFFFL)
46#define WAIT_OBJECT_0 ((::u32 ) STATUS_WAIT_0 + 0)
47
48#define WAIT_ABANDONED ((::u32 ) STATUS_ABANDONED_WAIT_0 + 0)
49#define WAIT_ABANDONED_0 ((::u32 ) STATUS_ABANDONED_WAIT_0 + 0)
50
51#define WAIT_IO_COMPLETION STATUS_USER_APC
52
53// based on Windows implementation and also a good limit for iterations with nanosleep and multiple locks in objects up to MAXIMUM_WAIT_OBJECTS in a single call
54#define MAXIMUM_WAIT_OBJECTS 64
55
56//union semun {
57// ::i32 val;
58// struct semid_ds * buf;
59// USHORT * array;
60//
61//};
62
63
64
65//CLASS_DECL_ACME ::u32 get_last_error();
66//CLASS_DECL_ACME void set_last_error(::u32 dw);
67
68
69CLASS_DECL_ACME bool _istlead(::i32 ch);
70
71
72
73
74
75bool c_xstart();
76
77extern oswindow g_oswindowDesktop;
78
79
80#endif // BASE_SOLARIS_SOLARIS_H
81
82
83
84