Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
A CRefTime classe é uma classe auxiliar para gerenciar tempos de referência.
Um tempo de referência é uma unidade de tempo representada em unidades de 100 nanossegundos. Essa classe compartilha o mesmo layout de dados que o tipo de dados REFERENCE_TIME , mas adiciona alguns métodos e operadores que fornecem funções de comparação, conversão e aritmética. Para obter mais informações sobre os tempos de referência, consulte Hora e Relógios no DirectShow.
| Variáveis de membro público | Descrição |
|---|---|
| m_time | Especifica o valor REFERENCE_TIME . |
| Métodos públicos | Descrição |
| Creftime | Método de construtor. |
| GetUnits | Recupera o tempo de referência em unidades de 100 nanossegundos. |
| Millisecs | Converte o tempo de referência em milissegundos. |
| Operadores | Descrição |
| operator REFERENCE_TIME() | Converte o objeto em um tipo de dados REFERENCE_TIME . |
| operator= | Atribui um novo tempo de referência. |
| operator+= | Adiciona dois tempos de referência. |
| operador = | Subtrai uma hora de referência de outra. |
Comentários
Há uma possível armadilha com o uso dessa classe. Se você aplicar o operador += com um objeto CRefTime como o operando esquerdo e uma variável do tipo LONG como o operando à direita, o compilador coagirá implicitamente o operando à direita em um objeto CRefTime . Essa coerção usa o construtor CRefTime que converte milissegundos em unidades REFERENCE_TIME; Como resultado, o operando à direita é multiplicado por 10.000:
CRefTime rt; // rt.m_time is 0.
LONG val = 20;
rt += val; // Coerce val to CRefTime, rt.m_time is now 200,000.
No entanto, a mesma coisa não acontece usando o operador + :
CRefTime rt; // rt.m_time is 0.
LONG val = 20;
rt = rt + val; // CRefTime, rt.m_time is 20.
Requisitos
| Requisito | Valor |
|---|---|
| parâmetro |
|
| Biblioteca |
|