定义了会话管理的接口  
 更多...
#include <dloginsession.h>
|  | 
| DExpected< void > | activate () | 
|  | 对 Manger对象的相应调用 对应Login上的Activate方法, 类似Manger对象的相应调用 
 | 
|  | 
| DExpected< void > | kill (DTK_LOGIN_NAMESPACE::SessionRole who, qint32 signalNumber) | 
|  | 和Manager相应对象调用类似 对应Login上的Kill方法, 和Manager对象相应调用类似 
 | 
|  | 
| DExpected< void > | lock () | 
|  | 和Manager相应对象调用类似 对应Login上的Kill方法, 和Manager对象相应调用类似 
 | 
|  | 
| DExpected< void > | setIdleHint (bool idle) | 
|  | 改变session的空闲状态 由session对象调用时候以便更改会话的空闲状态 
 | 
|  | 
| DExpected< void > | setType (DTK_LOGIN_NAMESPACE::SessionType type) | 
|  | 更改session的类型 
 | 
|  | 
| DExpected< void > | terminate () | 
|  | 和Manger对象的相应工作方式类似 和Manger对象的相应工作方式类似 
 | 
|  | 
| DExpected< QStringList > | autostartList () | 
|  | 列出所有自启动应用名 
 | 
|  | 
| DExpected< bool > | isAutostart (const QString &fileName) | 
|  | 是否自动启动 
 | 
|  | 
| DExpected< bool > | removeAutostart (const QString &fileName) | 
|  | 移除自动启动 
 | 
|  | 
| DExpected< bool > | addAutostart (const QString &fileName) | 
|  | 添加自动启动 
 | 
|  | 
|  | 
| bool | active | 
|  | 是否活动状态 Acitve是一个布尔类型, 如果为真代表这个session为活跃状态。这说明, 正在最前面显示。这个字段在这里有趣State字段是半冗余的。 
 | 
|  | 
| bool | idleHint | 
|  | 该会话的空闲提示状态 封装了当前session idle hint 状态, 和整个manager对象上各个属性如何为整个对象运作类似 
 | 
|  | 
| bool | locked | 
|  | session 的锁定状态 
 | 
|  | 
| bool | remote | 
|  | 是否为远程状态 
 | 
|  | 
| SessionClass | sessionClass | 
|  | session的class 
 | 
|  | 
| QString | desktop | 
|  | 当前session运行的桌面环境 
 | 
|  | 
| QString | display | 
|  | x11显示名字的编码 
 | 
|  | 
| QString | id | 
|  | 当前session的id 
 | 
|  | 
| QString | name | 
|  | 用户名称 
 | 
|  | 
| QString | remoteHost | 
|  | 远程用户的host名称 如果当前session是远程,返回远程系统的host名, 否则返回空 
 | 
|  | 
| QString | remoteUser | 
|  | 远程用户的User名 
 | 
|  | 
| QString | scope | 
|  | 当前session的scope名字 
 | 
|  | 
| QString | service | 
|  | 注册使用身份认证的PAM服务 
 | 
|  | 
| SessionState | state | 
|  | 编码session的状态 
 | 
|  | 
| QString | TTY | 
|  | 如果为文本登陆返回对应内核的tty路径 
 | 
|  | 
| SessionType | type | 
|  | 当前session类型的编码 
 | 
|  | 
| QString | seat | 
|  | 编码这个session所处的位置 
 | 
|  | 
| quint32 | user | 
|  | 编码此会话所属用户的用户 ID 
 | 
|  | 
| quint32 | audit | 
|  | 此session ID的内核审计会话 
 | 
|  | 
| quint32 | leader | 
|  | 注册当前session进程的编码 
 | 
|  | 
| quint32 | VTNr | 
|  | 当前session的虚拟终端号 
 | 
|  | 
| QDateTime | idleSinceHint | 
|  | session空闲状态 
 | 
|  | 
| quint64 | idleSinceHintMonotonic | 
|  | session空闲状态 
 | 
|  | 
| QDateTime | createdTime | 
|  | 返回会话的创建时间 
 | 
|  | 
| quint64 | createdTimeMonotonic | 
|  | 以CLOCK_MONOTONIC的形式获取session创建的时间戳 
 | 
|  | 
◆ active()
      
        
          | bool DLoginSession::active | ( |  | ) | const | 
      
 
 
◆ addAutostart
  
  | 
        
          | bool DLoginSession::addAutostart | ( | const QString & | fileName | ) |  |  | slot | 
 
添加自动启动 
- 参数
- 
  
    | [in] | fileName | 传入一个文件名将添加这个文件的自动启动 |  
 
- 返回
- 布尔值, 操作是否成功 
 
 
◆ audit()
      
        
          | quint32 DLoginSession::audit | ( |  | ) | const | 
      
 
返回此session ID的内核审计会话 
- 返回
- 该session的内核审计会话 ID 
 
 
◆ autostartAdded
  
  | 
        
          | void DLoginSession::autostartAdded | ( | const QString & | fileName | ) |  |  | signal | 
 
 
◆ autostartList
  
  | 
        
          | QStringList DLoginSession::autostartList | ( |  | ) |  |  | slot | 
 
 
◆ autostartRemoved
  
  | 
        
          | void DLoginSession::autostartRemoved | ( | const QString & | fileName | ) |  |  | signal | 
 
 
◆ createdTime()
      
        
          | QDateTime DLoginSession::createdTime | ( |  | ) | const | 
      
 
获取session创建时间 
- 返回
- session创建时间 
 
 
◆ createdTimeMonotonic()
      
        
          | quint64 DLoginSession::createdTimeMonotonic | ( |  | ) | const | 
      
 
以CLOCK_MONOTONIC的形式获取session创建的时间戳 
- 返回
- 创建session的时间戳 
 
 
◆ desktop()
      
        
          | QString DLoginSession::desktop | ( |  | ) | const | 
      
 
返回当前session正在运行的桌面环境(如果是已知的话) 
- 返回
- 当前session桌面环境的名字 
 
 
◆ display()
      
        
          | QString DLoginSession::display | ( |  | ) | const | 
      
 
返回x11显示名字的编码 
- 返回
- 图形并且x11登陆的显示名称 
 
 
◆ id()
      
        
          | QString DLoginSession::id | ( |  | ) | const | 
      
 
编码当前session的id 
- 返回
- session的id 
 
 
◆ idleHint()
      
        
          | bool DLoginSession::idleHint | ( |  | ) | const | 
      
 
 
◆ idleSinceHint()
      
        
          | QDateTime DLoginSession::idleSinceHint | ( |  | ) | const | 
      
 
session空闲状态 
- 返回
- session的空闲状态 
 
 
◆ idleSinceHintMonotonic()
      
        
          | quint64 DLoginSession::idleSinceHintMonotonic | ( |  | ) | const | 
      
 
session空闲状态 
- 返回
- session的空闲状态 
 
 
◆ isAutostart
  
  | 
        
          | bool DLoginSession::isAutostart | ( | const QString & | fileName | ) |  |  | slot | 
 
是否自动启动 
- 参数
- 
  
    | [in] | fileName | 传入一个文件名将判断这个文件是否自动启动 |  
 
- 返回
- 布尔值 
 
 
◆ leader()
      
        
          | quint32 DLoginSession::leader | ( |  | ) | const | 
      
 
注册当前session进程的编码 
- 返回
- 注册了当前session进程的编码 
 
 
◆ locked()
      
        
          | bool DLoginSession::locked | ( |  | ) | const | 
      
 
读取session的锁定状态 
- 返回
- session的锁定状态 
 
 
◆ lockedChanged
  
  | 
        
          | void DLoginSession::lockedChanged | ( | bool | locked | ) |  |  | signal | 
 
 
◆ name()
      
        
          | QString DLoginSession::name | ( |  | ) | const | 
      
 
 
◆ remote()
      
        
          | bool DLoginSession::remote | ( |  | ) | const | 
      
 
判断session是本地的还是远程的 
- 返回
- session是否是远程 
 
 
◆ remoteHost()
      
        
          | QString DLoginSession::remoteHost | ( |  | ) | const | 
      
 
 
◆ remoteUser()
      
        
          | QString DLoginSession::remoteUser | ( |  | ) | const | 
      
 
远程session的用户名 
- 返回
- 远程session的用户名 
 
 
◆ removeAutostart
  
  | 
        
          | bool DLoginSession::removeAutostart | ( | const QString & | fileName | ) |  |  | slot | 
 
移除自动启动 
- 参数
- 
  
    | [in] | fileName | 传入一个文件名将移除这个文件的自动启动 |  
 
- 返回
- 布尔值, 操作是否成功 
 
 
◆ scope()
      
        
          | QString DLoginSession::scope | ( |  | ) | const | 
      
 
当前session的scope名字 
- 返回
- 当前scope 名字 
 
 
◆ seat()
      
        
          | QString DLoginSession::seat | ( |  | ) | const | 
      
 
编码这个session所处的位置 
- 返回
- 当前session所处的位置 
 
 
◆ service()
      
        
          | QString DLoginSession::service | ( |  | ) | const | 
      
 
返回注册使用身份认证的服务 
- 返回
- 注册了这个session的PAM服务 
 
 
◆ sessionClass()
返回session的class类型 
- 返回
- session的会话类型 如 User, Greeter, LockScreen, Unknown中的任意一种 
 
 
◆ setType
  
  | 
        
          | void DLoginSession::setType | ( | DTK_LOGIN_NAMESPACE::SessionType | type | ) |  |  | slot | 
 
更改session的类型 
对应Login上的SetType() 方法。该方法允许动态改变会话类型, 只能由session当前的控制器调用。如果尚未调用TakeControl()方法, 这个方法会失效。此外, 一旦控制被释放, session类型会重置, 或者使用ReleaseControl方法或者关闭D-Bus连接可以实现重置的效果。这个应该有助于防止session进入不一致的状态, 比如控制器崩溃时候。唯一的参数 argument type是指的新的session 类型。 
 
 
◆ state()
编码session的状态 
- 返回
- session的状态 Online, Active, Closing, Unknown 其中一种 
 
 
◆ TTY()
      
        
          | QString DLoginSession::TTY | ( |  | ) | const | 
      
 
如果为文本登陆返回对应内核的tty路径 
- 返回
- 文本登陆时候对应内核的tty路径 
 
 
◆ type()
当前session类型的编码 TTY, X11, Mir, Wayland, Unspecified其中一种 
- 返回
- 当前session 类型的编码 
 
 
◆ user()
      
        
          | quint32 DLoginSession::user | ( |  | ) | const | 
      
 
编码此会话所属用户的用户 ID 
- 返回
- 返回一个Unix UID 
 
 
◆ VTNr()
      
        
          | quint32 DLoginSession::VTNr | ( |  | ) | const | 
      
 
当前session的虚拟终端号 
- 返回
- 当前session的虚拟终端号 
 
 
◆ audit
此session ID的内核审计会话 
如果会话的审计可用, 返回内核的审计会话id 
 
 
◆ createdTime
  
  | 
        
          | DLoginSession::createdTime |  | read | 
 
返回会话的创建时间 
timestamp 返回CLOCK_REALTIME。CLOCK_REALTIME 是对于机器绝对时间的猜测。 
 
 
◆ createdTimeMonotonic
  
  | 
        
          | DLoginSession::createdTimeMonotonic |  | read | 
 
以CLOCK_MONOTONIC的形式获取session创建的时间戳 
timestampMonotonic() 返回CLOCK_MONOTONIC,该时间表示来自过去某个任意点经过的绝对时间, 不受系统时钟变化影响 
 
 
◆ display
x11显示名字的编码 
如果当前会话是x11图形登陆, display会对x11显示名称进行编码, 如果不是, 返回空字符串 
 
 
◆ idleSinceHint
  
  | 
        
          | DLoginSession::idleSinceHint |  | read | 
 
session空闲状态 
描述session的空闲状态,类似于管理器对象上各个属性如何为整个系统执行操作 
 
 
◆ idleSinceHintMonotonic
  
  | 
        
          | DLoginSession::idleSinceHintMonotonic |  | read | 
 
session空闲状态 
描述session的空闲状态,类似于管理器对象上各个属性如何为整个系统执行操作 
 
 
◆ locked
session 的锁定状态 
该函数显示这个session的锁定状态, 由setLockedHint 函数进行定义, dbus中为SetLockedHint方法 
 
 
◆ name
◆ remote
是否为远程状态 
该函数返回session是远程还是本地的状态 
 
 
◆ remoteUser
  
  | 
        
          | DLoginSession::remoteUser |  | read | 
 
远程用户的User名 
如果当前session是远程会话, 返回远程会话的当前的用户名, 否则返回空 
 
 
◆ seat
编码这个session所处的位置 
返回这个session所处的位置, 如果存在的话。返回值是一个seat id 
 
 
◆ sessionClass
  
  | 
        
          | DLoginSession::sessionClass |  | read | 
 
session的class 
_class() 函数编码。它是"user"(给普通的用户会话), "greeter"给显示管理器的伪会话或者"lock-screen" (给关闭窗口会话) 
 
 
◆ state
编码session的状态 
session有3种状态, "online","active","closing"。当session已经登陆了但是没有active,也就是说没有在前景上显示, 显示为online;当session已经登陆了并且active了, 也就是说在前景上显示, 此时状态显示为"active",当session 正常退出, 但是session的一些进程仍然存在时候, 返回为closing。在未来可能会根据新的需求增加其他状态 
 
 
◆ TTY
如果为文本登陆返回对应内核的tty路径 
如果当前session是text login,返回tty的路径, 否则返回空字符串 
 
 
◆ type
当前session类型的编码 
该函数会返回"unspecified"(未指定, 给PAM sessions或者其他类似的session), TTY(给 text logins), 或者"x11"/"mir"/"wayland"(图形界面登陆) 
 
 
◆ user
编码此会话所属用户的用户 ID 
该函数编码此会话所属用户的用户 ID。返回值是一个Unix UID 
 
 
该类的文档由以下文件生成: