estrutura TAPE_SET_POSITION (minitape.h)

A estrutura TAPE_SET_POSITION é usada em conjunto com a solicitação IOCTL_TAPE_SET_POSITION para mover a posição atual na fita para a partição e deslocamento especificados.

Sintaxe

typedef struct _TAPE_SET_POSITION {
  ULONG         Method;
  ULONG         Partition;
  LARGE_INTEGER Offset;
  BOOLEAN       Immediate;
} TAPE_SET_POSITION, *PTAPE_SET_POSITION;

Membros

Method

Indica o tipo de posicionamento a ser executado. Esse membro deve ter um dos seguintes valores:

TAPE_REWIND

Posiciona a fita no início da partição indicada em Partição se a mídia estiver particionada e até o início da mídia se a mídia não estiver particionada. Se a mídia não estiver particionada, a partição deverá ser definida como zero. O membro Offset é ignorado.

TAPE_ABSOLUTE_BLOCK

Posiciona a fita no endereço de bloco absoluto localizado no deslocamento do início especificado por Offset. O valor no membro Partition é ignorado.

TAPE_LOGICAL_BLOCK

Posiciona a fita para o endereço de bloco lógico especificado por Offset, em relação ao início da partição indicada em Partição. Se a mídia não estiver particionada, a partição deverá ser definida como zero.

TAPE_PSEUDO_LOGICAL_BLOCK

Posiciona a fita para o endereço de bloco pseudológico especificado por Offset, em relação ao início da partição indicada em Partição. Se a mídia não estiver particionada, a partição deverá ser zero.

TAPE_SPACE_END_OF_DATA

Posiciona a fita no final da partição indicada em Partição ou, se a mídia não estiver particionada, no final da fita. O membro Offset é ignorado.

TAPE_SPACE_RELATIVE_BLOCKS

A partir da posição atual, posiciona a fita imediatamente após o número de blocos especificado por Offset. O membro de partição é ignorado.

TAPE_SPACE_FILEMARKS

A partir da posição atual, posiciona a fita imediatamente após o número de marcas de arquivo especificadas pelo Offset. O membro de partição é ignorado.

TAPE_SPACE_SEQUENTIAL_FMKS

A partir da posição atual, posiciona a fita imediatamente após a próxima ocorrência, se houver, do número de marcas de arquivo consecutivas especificadas pelo Offset. O membro de partição é ignorado.

TAPE_SPACE_SETMARKS

A partir da posição atual, posiciona a fita imediatamente após o número de setmarks especificado por Offset. O membro de partição é ignorado.

TAPE_SPACE_SEQUENTIAL_SMKS

A partir da posição atual, posiciona a fita imediatamente após a próxima ocorrência, se houver, do número de setmarks consecutivos especificado por Offset. O membro de partição é ignorado.

Partition

Indica a partição na qual definir a posição da fita. Esse membro deve ter um dos seguintes valores:

NOT_PARTITIONED (ou zero)
DATA_PARTITION
DIRECTORY_PARTITION

Se a mídia não estiver particionada, esse membro será zero.

Offset

Especifica um deslocamento cujo tipo depende do valor em Método. Se o método especificado posicionar a fita em um endereço de bloco, Offset especificará o deslocamento de bytes para a partição especificada. Se o método especificado for ignorar blocos, marcas de arquivo ou setmarks, Offset especificará o número a ser ignorado. Se Offset for zero, a fita será posicionada no início da partição.

Immediate

Quando definido como TRUE, indica que o dispositivo de destino deve retornar status imediatamente. Quando definido como FALSE, indica que o dispositivo deve retornar status após a conclusão da operação.

Comentários

Observe que uma unidade ou uma fita pode não dar suporte a todos os valores de método .

As partições são numeradas logicamente de 1 a N. No entanto, um número de partição não implica uma posição física na fita. Por exemplo, a partição número um pode não estar no início da mídia.

Quando o deslocamento especifica uma série de blocos, marcas de arquivo ou marcas de definição para posicionar, um valor positivo N no deslocamento faz com que o posicionamento de encaminhamento sobre N blocos, marcas de arquivo ou setmarks, interrompa o fim da partição ou o lado de fim da fita do bloco, marca de arquivo ou marca de configuração. Um valor zero no deslocamento não causa nenhuma alteração de posição. Um valor negativo N no deslocamento faz com que o posicionamento inverso, em direção ao início da partição ou da mídia de fita, sobre N blocos, marcas de arquivo ou setmarks, interrompa no lado do início da partição de um bloco, marca de arquivo ou marca de configuração.

Requisitos

Requisito Valor
Cabeçalho minitape.h (inclua Ntddtape.h, Minitape.h)

Confira também

IOCTL_TAPE_SET_POSITION

TapeMiniSetPosition