`CurrentTime` 在哪里定义的?我如何得到它?
Where's `CurrentTime` defined? How do I get it?
我正在尝试编写一个粗鲁的程序来旋转屏幕(使用 libXrandr)。在 xrandr
的源代码和手册页之外,我找不到很多关于 libXrandr 的信息。因此,我决定分析 xrandr
's source code 以了解 libXrandr。
在编写初始化例程时,我遇到了 XRRSetScreenConfig
,它需要一个 Timestamp
参数:
Status XRRSetScreenConfig (Display *dpy,
XRRScreenConfiguration *config,
Drawable draw,
int size_index,
Rotation rotation,
Time timestamp);
除了最后一个 timestamp
之外,我已经弄清楚了所有参数。我环顾了 xrandr.c 函数的用途,将我指向应该传递给它的正确方向,我发现传递了一个名为 CurrentTime
的变量 (?) 来代替这个参数:
status = XRRSetScreenConfigAndRate (dpy, sc, root, (SizeID) size,
(Rotation) (rotation | reflection),
rate, CurrentTime);
(顺便说一下,XRRSetScreenConfigAndRate
与 XRRSetScreenConfig
具有相同的参数,除了几个额外的参数)
我四处寻找这个变量的设置位置,但我确实找不到 任何地方 设置它的地方,甚至 defined .甚至不在 Xrandr.h 或其子包含中。
所以,我想我的问题是什么,CurrentTime
是什么?它实际上只是 Unix 时间中的当前时间吗?我可以只将常规 time_t
时间戳传递给 XRRSetScreenConfig
吗?如果没有,我如何获得有效的 CurrentTime
?
如有任何帮助,我们将不胜感激。
CurrentTime
是在X11/X.h
header中定义的宏,随后被X11/Xlib.h
包含。所以你可以在你的程序中传递 CurrentTime
而不用担心 where 和 how 它是如何定义的。
我正在尝试编写一个粗鲁的程序来旋转屏幕(使用 libXrandr)。在 xrandr
的源代码和手册页之外,我找不到很多关于 libXrandr 的信息。因此,我决定分析 xrandr
's source code 以了解 libXrandr。
在编写初始化例程时,我遇到了 XRRSetScreenConfig
,它需要一个 Timestamp
参数:
Status XRRSetScreenConfig (Display *dpy,
XRRScreenConfiguration *config,
Drawable draw,
int size_index,
Rotation rotation,
Time timestamp);
除了最后一个 timestamp
之外,我已经弄清楚了所有参数。我环顾了 xrandr.c 函数的用途,将我指向应该传递给它的正确方向,我发现传递了一个名为 CurrentTime
的变量 (?) 来代替这个参数:
status = XRRSetScreenConfigAndRate (dpy, sc, root, (SizeID) size,
(Rotation) (rotation | reflection),
rate, CurrentTime);
(顺便说一下,XRRSetScreenConfigAndRate
与 XRRSetScreenConfig
具有相同的参数,除了几个额外的参数)
我四处寻找这个变量的设置位置,但我确实找不到 任何地方 设置它的地方,甚至 defined .甚至不在 Xrandr.h 或其子包含中。
所以,我想我的问题是什么,CurrentTime
是什么?它实际上只是 Unix 时间中的当前时间吗?我可以只将常规 time_t
时间戳传递给 XRRSetScreenConfig
吗?如果没有,我如何获得有效的 CurrentTime
?
如有任何帮助,我们将不胜感激。
CurrentTime
是在X11/X.h
header中定义的宏,随后被X11/Xlib.h
包含。所以你可以在你的程序中传递 CurrentTime
而不用担心 where 和 how 它是如何定义的。