Coding Objects
Well, as said long ago, I am writing my own program to control the computer placed in my car. It is written almost exclusively in vb.net with a few classes written in C#. I am very object oriented in my coding style. Everything is represented by string objects that wrap the waned functionality into an easy to use object. Here I will discuss a few of the classes and how they are designed.
The following is the layout for my description:
Well, these features are all between 90-100% complete. When I stared this I didn't expect it to turn out so long but it helsp to explain how the application is structured and a few things that will be added in the future.
The following is the layout for my description:
- Project
- Class
- Object/Functionality
- Car Amp - Contains all the forms for the entire application
- frmAddress
- In the future will be a complete address book with Sync with MS Outlook 1/2 complete
- frmAlbum
- Access Music library via album
- frmArtist
- Access Music library via artist
- frmEmail
- Send/Recieve Email
- frmExit
- Closing menu with options to exit, shutdown, hibernate, or suspend
- frmLauncher
- Launch external application
- frmMapPoint
- Give embedded control to MamPoint maps
- frmMenu
- Main menu to access all other forms
- frmMiniMode
- Small screen mode
- frmPictureViewer
- Integrated Picture slideshow
- frmPlaylist
- Edit current playlist
- frmProgress
- Custom progress bar for loading unknow size/length item
- frmSkin
- Select the current skin to be used
- frmSync
- Control all aspects of the file sync options
- frmVoiceCommands
- Edit voice rec. preferences
- frmWeather
- Recieve weather updates via web
- Main
- Init of all items
- PluginInterfaceImplementation
- .Net Remoting Remote Control Interface
- Custom Controls
- Clock
- Custom Clock Control
- PictureButton
- Custom picture box to be a skinnable button with mouse down effects
- TextButtom
- Custom buttom with mouse down effects
- FileSync
- FileFunctions
- Handles file copy other misc functions
- FileLoctions
- Class to hold sync source, destination and other options
- FileSync
- FileSync object
- FileSyncOptions
- Options for the sync class
- FileSycWatcher
- Custom file watcher to watch for a drive to be come available
- GeneralClasses
- DeleteFuctions
- Delete files/directories even if readonly
- FreeMemory
- Gets the amount of free main memory
- Log
- Advanced Logging Class
- SpeedTimer
- Used to time different functions for speed performance
- ImagePoints
- Bacis Skin Utility
- KBTextbox
- Custom Textbox that uses the custom buttom to show an onscreen keybpard when a textbox is clicked on
- Mp3Tag (C#)
- Used to modify mp3 tags
- Music File
- AudioCD
- USed to play Audio CD's put in the cdrom
- DirectXMusic
- Class used to handle the directx playing of a audio file
- DirectXVideo
- Class used to handle the directx playing of a video file
- Player
- Media player Logic that combines all teh other classes in this project
- Playlist
- Contains a list of Song objects and has various functions
- Song
- Object of a single song
- State
- The current state of a player instance
- PluginInterface
- ICarPlugin
- Contains the .Net Remoting interface for remote control of the Car Media Player
- PluginTest
- Test Plugin implementing the ICarPlugin interface
- SpeechEngine
- SpeakText
- Wrapper for SAPI text to speech
- SpeechEngine
- Controls the voice detection and handles the events
- XmlLibFunctions
- Used to create Xml Playlists and the xml catalog of all music files
- Contains advanced xml file access functions
- RemoteCarWS
- Proof of concept web service able to control the car player over the ICarPlugin interface
- EX: WebPage -> RemoteCarWS -> ICarPlugin -> CarPlayer
- CarRipper
- Rips CD inserted into Mp3 Format
- FreeDb Lookup on CD info
- Mp3 Retaggings service
- Creates a fingerprint of an mp3 song, looks up the tag information and corrects it on the local machine.
Well, these features are all between 90-100% complete. When I stared this I didn't expect it to turn out so long but it helsp to explain how the application is structured and a few things that will be added in the future.
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home