# panda3d.core.DatagramGenerator¶

from panda3d.core import DatagramGenerator

class DatagramGenerator

This class defines the abstract interace to any source of datagrams, whether it be from a file or from the net.

Inheritance diagram

getDatagram(data: Datagram) → bool
getFile() → FileReference

Returns the FileReference that provides the source for these datagrams, if any, or NULL if the datagrams do not originate from a file on disk.

Return type

FileReference

getFilePos() → streamoff

Returns the current file position within the data stream, if any, or 0 if the file position is not meaningful or cannot be determined.

For DatagramGenerators that return a meaningful file position, this will be pointing to the first byte following the datagram returned after a call to getDatagram().

Return type

streamoff

getFilename() → Filename

Returns the filename that provides the source for these datagrams, if any, or empty string if the datagrams do not originate from a file on disk.

Return type

Filename

getTimestamp() → time_t

Returns the on-disk timestamp of the file that was read, at the time it was opened, if that is available, or 0 if it is not.

Return type

time_t

getVfile() → VirtualFile

Returns the VirtualFile that provides the source for these datagrams, if any, or NULL if the datagrams do not originate from a VirtualFile.

Return type

VirtualFile

isEof() → bool
isError() → bool
saveDatagram(info: SubfileInfo) → bool

Skips over the next datagram without extracting it, but saves the relevant file information in the SubfileInfo object so that its data may be read later. For non-file-based datagram generators, this may mean creating a temporary file and copying the contents of the datagram to disk.

Returns true on success, false on failure or if this method is unimplemented.