Open Model Railroad Network (OpenMRN)
Loading...
Searching...
No Matches
TivaEEPROMFile Class Reference
Inheritance diagram for TivaEEPROMFile:
DeviceFile Node Device FileIO

Public Member Functions

 TivaEEPROMFile (const char *name, unsigned byte_offset, unsigned byte_size)
 
int fstat (File *file, struct stat *stat) override
 Implements querying the file size.
 
ssize_t write (unsigned int index, const void *buf, size_t len) override
 Write to the eeprom.
 
ssize_t read (unsigned int index, void *buf, size_t len) override
 Read from the eeprom.
 
- Public Member Functions inherited from Device
 Device (const char *name)
 Constructor.
 
virtual ~Device ()
 Destructor.
 

Private Attributes

uint16_t byteOffset_
 Address in the EEPROM of the first byte of this file.
 
uint16_t byteSize_
 Total number of bytes in this file.
 

Additional Inherited Members

- Static Public Member Functions inherited from Device
static int open (struct _reent *reent, const char *path, int flags, int mode)
 Open a file or device.
 
static int close (struct _reent *reent, int fd)
 Close a file or device.
 
static int stat (struct _reent *reent, const char *path, struct stat *stat)
 Get the status information of a file or device.
 
static int select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, long long timeout)
 POSIX select().
 
static void select_clear ()
 Clears the current thread's select bits.
 
- Static Public Member Functions inherited from FileIO
static ssize_t read (struct _reent *reent, int fd, void *buf, size_t count)
 Read from a file or device.
 
static ssize_t write (struct _reent *reent, int fd, const void *buf, size_t count)
 Write to a file or device.
 
static _off_t lseek (struct _reent *reent, int fd, _off_t offset, int whence)
 Change the offset index of a file or device.
 
static int fstat (struct _reent *reent, int fd, struct stat *stat)
 Get the status information of a file or device.
 
static int ioctl (int fd, unsigned long int key, unsigned long data)
 Request and ioctl transaction.
 
static int fcntl (int fd, int cmd, unsigned long data)
 Manipulate a file descriptor.
 
static bool is_device (int fd)
 Test if the file descriptor belongs to a device.
 
- Protected Member Functions inherited from DeviceFile
 DeviceFile (const char *name)
 Constructor.
 
 ~DeviceFile ()
 Destructor.
 
int open (File *file, const char *path, int flags, int mode) OVERRIDE
 Open a device.
 
- Protected Member Functions inherited from Node
 Node (const char *name)
 Constructor.
 
virtual ~Node ()
 Destructor.
 
int open (File *, const char *, int, int) OVERRIDE
 Open method.
 
int close (File *) OVERRIDE
 Close method.
 
- Protected Member Functions inherited from FileIO
 FileIO (const char *name)
 Constructor.
 
virtual ~FileIO ()
 Destructor.
 
virtual off_t lseek (File *f, off_t offset, int whence)
 Seek method.
 
virtual int ioctl (File *file, unsigned long int key, unsigned long data)
 Request an ioctl transaction.
 
virtual int fcntl (File *file, int cmd, unsigned long data)
 Manipulate a file descriptor.
 
virtual bool select (File *file, int mode)
 Device select method.
 
- Static Protected Member Functions inherited from Device
static void select_insert (SelectInfo *info)
 Add client to list of clients needing woken.
 
static void select_wakeup (SelectInfo *info)
 Wakeup the list of clients needing woken.
 
static void select_wakeup_from_isr (SelectInfo *info, int *woken)
 Wakeup the list of clients needing woken.
 
- Static Protected Member Functions inherited from FileIO
static int fd_alloc (void)
 Allocate a free file descriptor.
 
static void fd_free (int fd)
 Free up a file descriptor.
 
static Filefile_lookup (int fd)
 Looks up a reference to a File corresponding to a given file descriptor.
 
static int fd_lookup (File *file)
 Looks up a file descriptor corresponding to a given File reference.
 
- Protected Attributes inherited from Node
OSMutex lock_
 protects internal structures.
 
mode_t mode_
 File open mode, such as O_NONBLOCK.
 
unsigned int references_
 number of open references
 
- Protected Attributes inherited from FileIO
const char * name
 device name
 
- Static Protected Attributes inherited from FileIO
static const unsigned int numOpenFiles = 20
 
static File files []
 File descriptor pool.
 
static OSMutex mutex
 mutual exclusion for fileio
 

Detailed Description

Definition at line 46 of file TivaEEPROMFile.hxx.

Constructor & Destructor Documentation

◆ TivaEEPROMFile()

TivaEEPROMFile::TivaEEPROMFile ( const char *  name,
unsigned  byte_offset,
unsigned  byte_size 
)
inline

Definition at line 49 of file TivaEEPROMFile.hxx.

Member Function Documentation

◆ fstat()

int TivaEEPROMFile::fstat ( File file,
struct stat stat 
)
inlineoverridevirtual

Implements querying the file size.

Reimplemented from Node.

Definition at line 64 of file TivaEEPROMFile.hxx.

◆ read()

ssize_t TivaEEPROMFile::read ( unsigned int  index,
void *  buf,
size_t  len 
)
inlineoverridevirtual

Read from the eeprom.

Parameters
indexindex within DeviceFile address space to start read
buflocation to post read data
lenlength in bytes of data to read
Returns
number of bytes read upon success, -errno upon failure

Implements DeviceFile.

Definition at line 123 of file TivaEEPROMFile.hxx.

◆ write()

ssize_t TivaEEPROMFile::write ( unsigned int  index,
const void *  buf,
size_t  len 
)
inlineoverridevirtual

Write to the eeprom.

Parameters
indexindex within the file address space to start write
bufdata to write
lenlength in bytes of data to write
Returns
number of bytes written upon success, -errno upon failure

Implements DeviceFile.

Definition at line 76 of file TivaEEPROMFile.hxx.

Member Data Documentation

◆ byteOffset_

uint16_t TivaEEPROMFile::byteOffset_
private

Address in the EEPROM of the first byte of this file.

Definition at line 165 of file TivaEEPROMFile.hxx.

◆ byteSize_

uint16_t TivaEEPROMFile::byteSize_
private

Total number of bytes in this file.

Definition at line 167 of file TivaEEPROMFile.hxx.


The documentation for this class was generated from the following file: