ZeroDevice.cpp 568 B

12345678910111213141516171819202122232425262728293031
  1. #include "ZeroDevice.h"
  2. #include "Limits.h"
  3. #include <AK/StdLib.h>
  4. #include <AK/kstdio.h>
  5. ZeroDevice::ZeroDevice()
  6. {
  7. }
  8. ZeroDevice::~ZeroDevice()
  9. {
  10. }
  11. bool ZeroDevice::hasDataAvailableForRead() const
  12. {
  13. return true;
  14. }
  15. Unix::ssize_t ZeroDevice::read(byte* buffer, Unix::size_t bufferSize)
  16. {
  17. kprintf("ZeroDevice: read from zero\n");
  18. Unix::size_t count = min(GoodBufferSize, bufferSize);
  19. memset(buffer, 0, count);
  20. return count;
  21. }
  22. Unix::ssize_t ZeroDevice::write(const byte*, Unix::size_t bufferSize)
  23. {
  24. return min(GoodBufferSize, bufferSize);
  25. }