<?xml version="1.0"?>
<doc>
<assembly>
<name>BinaryLib</name>
</assembly>
<members>
<member name="T:BinaryLib.SqlReader">
<summary>
Provides an interface for executing Sql Queries and NonQueries.
This is for MS SQL databases
</summary>
</member>
<member name="M:BinaryLib.SqlReader.Create(System.String,System.String)">
<summary>
Creates a SqlReader object with CommandType of Text
</summary>
<param name="connectionString">The connection string to use to connect to the server.</param>
<param name="commandText">The text to execute on the SQL server.</param>
</member>
<member name="M:BinaryLib.SqlReader.#ctor(System.String,System.String,System.Data.CommandType)">
<summary>
Creates a SqlReader object.
</summary>
<param name="connectionString">The connection string to use to connect to the server.</param>
<param name="commandText">The text to execute on the SQL server.</param>
<param name="commandType">The command type of the command to perform.</param>
</member>
<member name="M:BinaryLib.SqlReader.Execute">
<summary>
Executes a query.
</summary>
</member>
<member name="M:BinaryLib.SqlReader.ExecuteNonQuery">
<summary>
Executes a non-query.
</summary>
</member>
<member name="P:BinaryLib.SqlReader.ConnectionString">
<summary>
The connection string of the SqlReader object.
</summary>
</member>
<member name="P:BinaryLib.SqlReader.CommandText">
<summary>
The command text of the SqlReader object.
</summary>
</member>
<member name="P:BinaryLib.SqlReader.ReturnData">
<summary>
Indicates whether or not the SqlCommand returns data or not.
</summary>
</member>
<member name="P:BinaryLib.SqlReader.Parameters">
<summary>
An object representing the parameters to use while executing a query.
</summary>
</member>
<member name="P:BinaryLib.SqlReader.Result">
<summary>
An object returning the result of a Sql Query.
</summary>
</member>
<member name="M:BinaryLib.SqlData.GetColumnName(System.Int32)">
<summary>
Returns the name of the specified column.
</summary>
<param name="column">The 0-based integer value representing the column number.</param>
<returns>A column name in string format.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetColumnNames">
<summary>
Returns a list of type string containing all the column names returned in the query.
</summary>
<returns>A list of type string.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetValueList(System.Int32)">
<summary>
Returns a list of type object filled with values from the specified column.
</summary>
<param name="column">The 1-based column identifier.</param>
<returns>A list of type object</returns>
</member>
<member name="M:BinaryLib.SqlData.GetValueList(System.String)">
<summary>
Returns a list of type object filled with values from the specified column.
</summary>
<param name="columnName">The column name from which to pull the data.</param>
<returns>A list of type object</returns>
</member>
<member name="M:BinaryLib.SqlData.GetValue(System.Int32,System.Int32)">
<summary>
Returns an object representing the value of the item from the Sql Query
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type object.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetValue(System.Int32)">
<summary>
Returns an object representing the value of the item from the Sql Query
</summary>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type object.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetValue(System.String)">
<summary>
Returns an object representing the value of the item from the Sql Query
</summary>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type object.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetValue(System.Int32,System.String)">
<summary>
Returns an object representing the value of the item from the Sql Query
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type object.</returns>
</member>
<member name="M:BinaryLib.SqlData.IsNull(System.Int32)">
<summary>
Returns true if the database value is null.
</summary>
<param name="column">The 0-based column identifier.</param>
<returns>True if null, False if not null.</returns>
</member>
<member name="M:BinaryLib.SqlData.IsNull(System.Int32,System.Int32)">
<summary>
Returns true if the database value is null.
</summary>
<param name="row">The 1-based column identifier.</param>
<param name="column">The 0-based column identifier.</param>
<returns>True if null, False if not null.</returns>
</member>
<member name="M:BinaryLib.SqlData.IsNull(System.String)">
<summary>
Returns true if the database value is null.
</summary>
<param name="columnName">The name of the column.</param>
<returns>True if null, False if not null.</returns>
</member>
<member name="M:BinaryLib.SqlData.IsNull(System.Int32,System.String)">
<summary>
Returns true if the database value is null.
</summary>
<param name="row">The 1-based column identifier.</param>
<param name="columnName">The name of the column.</param>
<returns>True if null, False if not null.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetString(System.Int32)">
<summary>
Returns a string value representing the value of the item from the Sql Query.
</summary>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type string.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetString(System.Int32,System.Int32)">
<summary>
Returns a string value representing the value of the item from the Sql Query.
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type string.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetString(System.String)">
<summary>
Returns a string value representing the value of the item from the Sql Query.
</summary>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type string.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetString(System.Int32,System.String)">
<summary>
Returns a string value representing the value of the item from the Sql Query.
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type string.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt32(System.Int32)">
<summary>
Returns an Int32 value representing the value of the item from the Sql Query
</summary>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type Int32.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt32(System.Int32,System.Int32)">
<summary>
Returns an Int32 value representing the value of the item from the Sql Query
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type Int32.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt32(System.String)">
<summary>
Returns an Int32 value representing the value of the item from the Sql Query
</summary>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type Int32.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt32(System.Int32,System.String)">
<summary>
Returns an Int32 value representing the value of the item from the Sql Query
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type Int32.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt64(System.Int32)">
<summary>
Returns an Int64 value representing the value of the item from the Sql Query
</summary>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type Int64.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt64(System.Int32,System.Int32)">
<summary>
Returns an Int64 value representing the value of the item from the Sql Query
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="column">The 0-based column identifier.</param>
<returns>Value of type Int64.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt64(System.String)">
<summary>
Returns an Int64 value representing the value of the item from the Sql Query
</summary>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type Int64.</returns>
</member>
<member name="M:BinaryLib.SqlData.GetInt64(System.Int32,System.String)">
<summary>
Returns an Int64 value representing the value of the item from the Sql Query
</summary>
<param name="row">The 1-based row identifier.</param>
<param name="columnName">The column name from which to pull the data.</param>
<returns>Value of type Int64.</returns>
</member>
<member name="P:BinaryLib.SqlData.RowCount">
<summary>
Gets the number of rows in the result query.
</summary>
</member>
<member name="P:BinaryLib.SqlData.ColumnCount">
<summary>
Gets the number of columns in the result query.
</summary>
</member>
<member name="T:BinaryLib.clsMySqlAccess">
<summary>
clsMySqlAccess - class for accessing MySql databases.
Construct with a login string or clsMySqlLogin class.
Uses the dataProvider.
There should be one of these for each connection.
It is used to access all tables in a given database.
</summary>
</member>
<member name="F:BinaryLib.clsMySqlAccess._login">
<summary>
holds connection string for this accessor
</summary>
</member>
<member name="F:BinaryLib.clsMySqlAccess.DbType">
<summary>
This class is specifically for MYSQL databases
</summary>
</member>
<member name="M:BinaryLib.clsMySqlAccess.Dispose">
<summary>
clean up this object
</summary>
</member>
<member name="M:BinaryLib.clsMySqlAccess.Finalize">
<summary>
Destructor
</summary>
</member>
<member name="M:BinaryLib.clsMySqlAccess.#ctor">
<summary>
clsMySqlAccess() - disallow empty constructor
</summary>
</member>
<member name="M:BinaryLib.clsMySqlAccess.#ctor(BinaryLib.clsMySqlLogin)">
<summary>
clsMySqlAccess(clsMySqlLogin signon) - Construct with a login class
</summary>
<param name="signon">Prebuilt clsMySqlLogin class</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.#ctor(System.String)">
<summary>
clsMySqlAccess(connectString)- construct a login class
</summary>
<param name="connectString">complete connection string</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.#ctor(System.String,System.String)">
<summary>
clsMySqlAccess(user,password) - construct a default ppt connect string
</summary>
<param name="usr"></param>
<param name="pwd"></param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.QueryDS(System.Data.DataSet,System.String)">
<summary>
QueryDS - Native mode query to fill a DATA SET
</summary>
<param name="dataset">DataSet to be filled</param>
<param name="sql">sql to retrieve data</param>
<returns>filled in dataset</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.QueryDS(System.String)">
<summary>
QueryDS - run a query and return a dataset
Simple way to gat a dataset from sql
Uses DataProvidor
</summary>
<param name="sql">sql to retrieve data</param>
<returns>filled dataset</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.QueryDsForList(System.Data.DataSet,System.String)">
<summary>
Extract a list of strings from a dataset for a list
</summary>
<param name="ds">Dataset with input</param>
<param name="columnName">Column name to extract</param>
<returns>list of strings containing the data or null</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.Reset(System.String)">
<summary>
Reset - Resets the connection string to a new one
</summary>
<param name="connectString"></param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.Scalar(System.String)">
<summary>
Scalar - Get a single result from the database
</summary>
<param name="sql">command to execute</param>
<returns>Object with value must cast this</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.Scalar(System.String,System.String[])">
<summary>
Scalar - for insert, delete, and updates
NOT bound in a transaction so it is not safe
There is a variable number of parameters that are entered in pairs of strings.
such as "?name","John","?Age","25"...
</summary>
<param name="sql">SQL to execute with embeded parameters. As many as needed </param>
<param name="items">Name of embeded parameter followed by value )</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.NativeProc(MySql.Data.MySqlClient.MySqlCommand)">
<summary>
execute a native Mysql non query using a prebuilt
MySqlCommand object.
Eventually this will execute stored procedures
</summary>
<param name="cmd">pre built command object</param>
<returns>UInt32 number of rows effected</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.NativeExec(System.String)">
<summary>
Execute using native Mysql mode
</summary>
<param name="sql">sql to execute</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.NonQuery(System.String)">
<summary>
NonQuery - for insert, delete, and updates
NOT bound in a transaction so it is not safe
</summary>
<param name="sql">SQL to execute</param>
<returns>Int64 with number of rows effected</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.NonQuery(System.String,System.String,System.String)">
<summary>
NonQuery - for insert, delete, and updates
NOT bound in a transaction so it is not safe
</summary>
<param name="sql">SQL to execute with embeded parameter (one)</param>
<param name="replace">Name of embeded parameter (one)</param>
<param name="parm">Value for embeded parameter (one)</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.NonQuery(System.String,System.String[])">
<summary>
NonQuery - for insert, delete, and updates
NOT bound in a transaction so it is not safe
There is a variable number of parameters that are entered in pairs of strings.
such as "?name","John","?Age","25"...
</summary>
<param name="sql">SQL to execute with embeded parameters. As many as needed </param>
<param name="items">Name of embeded parameter followed by value )</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.QueryClassList(System.String,System.Object)">
<summary>
Get an ArrayList of all objects selected.
</summary>
<param name="sql">SQL to execute</param>
<param name="obj">new class of the type desired for the return array</param>
<returns>ArrayList of objects. can be cast to desired object</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.QueryClass(System.String,System.Object)">
<summary>
QueryClass - get one item of specified class
</summary>
<param name="sql">select for one item</param>
<param name="obj">new anyObject to provide type data</param>
<returns>object of the requested type</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.runTransactions(System.String[])">
<summary>
runTransactions - execute multiple sql statements with a transaction
This should be followed by a commit or rollback
HAS BEEN TESTED
</summary>
<param name="sqla">An array of sql commands insert/update/delete</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.runTransactions(MySql.Data.MySqlClient.MySqlConnection,MySql.Data.MySqlClient.MySqlCommand[])">
<summary>
runTransactions - native mode transactions
</summary>
<param name="conn">MYSQL connection</param>
<param name="cmds">array of mysql commands</param>
<returns>OK if sucessful. else error message</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.runTransactions(BinaryLib.DataProvider.Command[])">
<summary>
runTransactions - native mode transactions
</summary>
<param name="cmds">array of DataProvider commands</param>
<returns>OK if sucessful. else error message</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.GetCommandArray(MySql.Data.MySqlClient.MySqlConnection,System.String[])">
<summary>
GetCommandArray - gets a MYSQL command structure array
from a list of sql statements in native mode
</summary>
<param name="connection">the Mysql connection</param>
<param name="sql">array of sql statements</param>
<returns>Array of MySqlCommand objects</returns>
</member>
<member name="M:BinaryLib.clsMySqlAccess.AddParm(System.String,System.String,MySql.Data.MySqlClient.MySqlCommand@)">
<summary>
AddParm - adds parameters for substitution is sql commands
The input MySqlCommand is modified
</summary>
<param name="name">Name of parameter ?name</param>
<param name="val">The replacement value</param>
<param name="cmd">The command structure to be changed</param>
</member>
<member name="M:BinaryLib.clsMySqlAccess.GetConnection">
<summary>
GetConnection - Get a MYSQL connection
</summary>
<returns></returns>
</member>
<member name="T:BinaryLib.clsMP3v2Tag">
<summary>
clsMP3v2Tag - read v2 tags from the file
</summary>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.#ctor">
<summary>
Empty copy of class
</summary>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.#ctor(System.IO.FileStream@,System.Int32,System.Int32)">
<summary>
new class ctor - most usefull
</summary>
<param name="fs">FileStream for the file</param>
<param name="lbl">size of each tag label</param>
<param name="flg">size of the tag flag bytes</param>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.setFile(System.IO.FileStream@,System.Int32,System.Int32)">
<summary>
assign the filestream to use
</summary>
<param name="fs">FileStream for the file</param>
<param name="lbl">size of each tag label</param>
<param name="flg">size of the tag flag bytes</param>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.getTag">
<summary>
Get the next tag from the stream
</summary>
<returns>file position for the next read</returns>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.decipher">
<summary>
Decipher the tag if necessary
</summary>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.decodeFrame">
<summary>
Decode the tag
</summary>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.doimage">
<summary>
Handle embedded images
</summary>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.saveImage(System.String)">
<summary>
Save the embedded image in an external file
</summary>
<param name="path">where to store the image complete file name and path</param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.decodedLength">
<summary>
Get length of decoded section
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.decodeGenres">
<summary>
Translate 2 digit genres to string names
</summary>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.sliceGenre">
<summary>
further decode genre
</summary>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.syncSafeLength(System.Byte[])">
<summary>
syncSafeLength 28 bit length in 4 bytes
Each high order bit is zero so
0x7f 0x7f 0x7f 0x7f translates to
0x0f 0xff 0xff 0xff
</summary>
<param name="bfr">raw sata</param>
<returns>sync lenght</returns>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.cvtLen(System.Byte[])">
<summary>
cvtLen normal big endian length for all else
converts 4 bytes
</summary>
<param name="bfr">raw data</param>
<returns>length</returns>
</member>
<member name="M:BinaryLib.clsMP3v2Tag.xlate(System.Byte[])">
<summary>
make sure of ascii encoding
</summary>
<param name="raw"></param>
<returns></returns>
</member>
<member name="T:BinaryLib.clsRawBase">
<summary>
clsRawBase - base class to access MYSQL database
This uses native mode MYSQL classes and is one way to obtain a long
term connection to the database.
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.constr">
<summary>
Connection string.
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.host">
<summary>
host or server name.
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.user">
<summary>
database user name
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.pwd">
<summary>
user password
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.dbname">
<summary>
database to use
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.tblname">
<summary>
current table name
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.csrsql">
<summary>
sql to run a cursor on the data
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.current">
<summary>
current row for cursor
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.startRow">
<summary>
start row for cursor read
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.endRow">
<summary>
end row for cursor read
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.maxRow">
<summary>
max rows for one cursor read
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.conn">
<summary>
Native MYSQL connection class
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.csrConn">
<summary>
Native MYSQL connection for cursor
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.lconn">
<summary>
long term connection
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.data">
<summary>
Native data table class
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.ds">
<summary>
a raw dataset
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.da">
<summary>
Native MYSQL data adapyer
</summary>
</member>
<member name="F:BinaryLib.clsRawBase.cb">
<summary>
Native MYSQL command builder
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.#ctor">
<summary>
empty constructor
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.getTable">
<summary>
Get the first table
</summary>
<returns>DataTable class for first table</returns>
</member>
<member name="M:BinaryLib.clsRawBase.fetchRow">
<summary>
Issue next cursor fetch
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.openCursor(System.String,System.String)">
<summary>
Open a cursor
Throws Exception for error
</summary>
<param name="sql">sql to issue</param>
<param name="tbl">Table to read</param>
<returns>true for success</returns>
</member>
<member name="M:BinaryLib.clsRawBase.closeCursor">
<summary>
Close the active cursor
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.fetch">
<summary>
Issue next fetch starting a current + 1
This is for one row at a time
</summary>
<returns>The next row as a DataRow class</returns>
</member>
<member name="M:BinaryLib.clsRawBase.getFirst">
<summary>
getFirst gets first record in dataset
For use with load
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsRawBase.getNext">
<summary>
getNext gets next row
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsRawBase.getList(System.String)">
<summary>
getList gets a list of strings from the specified column
Presumes the dataset has been filled.
</summary>
<param name="colName">Name of column to extract</param>
<returns>List of strings from the specified column</returns>
</member>
<member name="M:BinaryLib.clsRawBase.updateRow(System.Data.DataRow)">
<summary>
updateRow updates current row used with fetch, and get functions
</summary>
<param name="ro">row to be updated</param>
</member>
<member name="M:BinaryLib.clsRawBase.getNewRow">
<summary>
getNewRow get a new table row
Used to add rows to the table
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsRawBase.insertRow(System.Data.DataRow)">
<summary>
insertRow adds a row to the table use getNewRow row
</summary>
<param name="ro">DataRow to be inserted</param>
</member>
<member name="M:BinaryLib.clsRawBase.selectItem(System.String)">
<summary>
selectItem reads single row from table
does not change current dataset
</summary>
<param name="sql">SQL for single row select</param>
<returns>DataRow for requested item</returns>
</member>
<member name="M:BinaryLib.clsRawBase.lselectItem(System.String)">
<summary>
Select a row from the long term connection
</summary>
<param name="sql">sql to issue</param>
<returns>DataRow for the selected item</returns>
</member>
<member name="M:BinaryLib.clsRawBase.selectMulti(System.String)">
<summary>
Get a DataTable class containing multiple rows
</summary>
<param name="sql">sql to issue</param>
<returns>DataTable of result or null for error</returns>
</member>
<member name="M:BinaryLib.clsRawBase.execNonQuery(System.String)">
<summary>
execNonQuery used for inserts and updates
does not affect current dataset
</summary>
<param name="sql">Insert,delete or update SQL</param>
<returns>Count of rows changed</returns>
</member>
<member name="M:BinaryLib.clsRawBase.lexecNonQuery(System.String)">
<summary>
execute sql using long term connection
</summary>
<param name="sql">sql to issue</param>
<returns>number of rows changed</returns>
</member>
<member name="M:BinaryLib.clsRawBase.mkConStr(System.String,System.String,System.String,System.String)">
<summary>
build a connection string from parms
</summary>
<param name="host">host or server name</param>
<param name="user">database user name</param>
<param name="pwd">user password</param>
<param name="db">database to use</param>
</member>
<member name="M:BinaryLib.clsRawBase.genConStr">
<summary>
generate the full connection string from the stored values
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.genNoDb">
<summary>
generate a connection string without the database parameter
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.changeDatabase(System.String)">
<summary>
Change to a specific database.
This creates a long term connection
</summary>
<param name="db">database to use</param>
<returns>true for sucess else false</returns>
</member>
<member name="M:BinaryLib.clsRawBase.doConnect">
<summary>
doConnect connection for this class
Leaves the connection open. This is a short term connection.
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.disconnect">
<summary>
disconnect closes the short connection
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.ldoConnect">
<summary>
open long term connection
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsRawBase.ldisconnect">
<summary>
close long term connection
</summary>
</member>
<member name="M:BinaryLib.clsRawBase.testConnect">
<summary>
Test the connection string
</summary>
<returns>true for success else false</returns>
</member>
<member name="P:BinaryLib.clsRawBase.ConStr">
<summary>
Connection string Property
</summary>
</member>
<member name="P:BinaryLib.clsRawBase.Count">
<summary>
Get count of rows in first table in the dataset
</summary>
</member>
<member name="T:BinaryLib.DataProvider">
<summary>
Provides database-independent access by hiding vendor specific classes
This code is from code project and written by Jaryl Sim.
Ken Jones added the MYSQL database support.
</summary>
</member>
<member name="M:BinaryLib.DataProvider.#ctor(System.String,BinaryLib.DataProvider.DBType)">
<summary>
Constructor
</summary>
<param name="connectionstring">DB connection string</param>
<param name="dbtype">Database type to access</param>
</member>
<member name="M:BinaryLib.DataProvider.CreateCommand(System.String)">
<summary>
Creates a Command object to manipulate the database
</summary>
<param name="sqlstring">DB connection string</param>
</member>
<member name="M:BinaryLib.DataProvider.ExecuteNonQuery(System.String)">
<summary>
Executes SQL INSERT, DELETE and UPDATE statements and returns the number of rows affected
</summary>
<param name="commandstring">Command string</param>
<returns>Number of rows affected</returns>
</member>
<member name="M:BinaryLib.DataProvider.ExecuteNonQuery(BinaryLib.DataProvider.Command)">
<summary>
Executes SQL INSERT, DELETE and UPDATE statements and returns the number of rows affected
</summary>
<param name="command">Command object</param>
<returns>Number of rows affected</returns>
</member>
<member name="M:BinaryLib.DataProvider.ExecuteReader(System.String)">
<summary>
Executes SQL commands and returns a forward-only DataReader
</summary>
<param name="commandstring">Command string</param>
<returns>DataReader containing data</returns>
</member>
<member name="M:BinaryLib.DataProvider.ExecuteReader(BinaryLib.DataProvider.Command)">
<summary>
Executes SQL commands and returns a forward-only DataReader
</summary>
<param name="command">Command object</param>
<returns>DataReader containing data</returns>
</member>
<member name="M:BinaryLib.DataProvider.ExecuteScalar(System.String)">
<summary>
Executes SQL commands to retrieve a single value from database
</summary>
<param name="commandstring">Command string</param>
<returns>Single object containing result</returns>
</member>
<member name="M:BinaryLib.DataProvider.ExecuteScalar(BinaryLib.DataProvider.Command)">
<summary>
Executes SQL commands to retrieve a single value from database
</summary>
<param name="command">Command object</param>
<returns>Single object containing result</returns>
</member>
<member name="M:BinaryLib.DataProvider.FillDataSet(System.String)">
<summary>
Executes SQL commands to return rows in a DataSet
</summary>
<param name="commandstring">Command string</param>
<returns>Resulting DataSet</returns>
</member>
<member name="M:BinaryLib.DataProvider.FillDataSet(BinaryLib.DataProvider.Command)">
<summary>
Executes SQL commands to return rows in a DataSet
</summary>
<param name="command">Command object</param>
<returns>Resulting DataSet</returns>
</member>
<member name="M:BinaryLib.DataProvider.ExecuteTransaction(BinaryLib.DataProvider.Command[])">
<summary>
Executes a series SQL INSERT, DELETE and UPDATE statements that ensures atomicity and concurrency. Rolls back on exception.
</summary>
<param name="commands">Array of Command objects to be executed in a transaction</param>
</member>
<member name="M:BinaryLib.DataProvider.ReflectObject(System.String,System.Type)">
<summary>
Populates an object of desired class from the database
</summary>
<param name="commandstring">SQL query string</param>
<param name="objecttype">Type of object expected</param>
<returns>Reflected object</returns>
</member>
<member name="M:BinaryLib.DataProvider.ReflectObject(BinaryLib.DataProvider.Command,System.Type)">
<summary>
Populates an object of desired class from the database
</summary>
<param name="command">Command object</param>
<param name="objecttype">Type of object expected</param>
<returns>Reflected object</returns>
</member>
<member name="M:BinaryLib.DataProvider.ReflectCollection(System.String,System.Type)">
<summary>
Populates an arraylist of objects of desired class from the database
</summary>
<param name="commandstring">SQL query string</param>
<param name="objecttype">Type of object expected</param>
<returns>Reflected objects in a Collection</returns>
</member>
<member name="M:BinaryLib.DataProvider.ReflectCollection(BinaryLib.DataProvider.Command,System.Type)">
<summary>
Populates an arraylist of objects of desired class from the database
</summary>
<param name="command">Command object</param>
<param name="objecttype">Type of object expected</param>
<returns>Reflected objects in a Collection</returns>
</member>
<member name="P:BinaryLib.DataProvider.DatabaseType">
<summary>Type of database</summary>
</member>
<member name="P:BinaryLib.DataProvider.ConnectionString">
<summary>Database connection string</summary>
</member>
<member name="T:BinaryLib.DataProvider.DBType">
<summary>
Types of databases that can be accessed through DataProvider
</summary>
</member>
<member name="F:BinaryLib.DataProvider.DBType.OleDb">
<summary>OleDb accessible database</summary>
</member>
<member name="F:BinaryLib.DataProvider.DBType.SqlServer">
<summary>SQL accessible database</summary>
</member>
<member name="F:BinaryLib.DataProvider.DBType.MySql">
<summary>MYSQL accessible database</summary>
</member>
<member name="T:BinaryLib.DataProvider.Command">
<summary>
Types of databases that can be accessed through DataProvider
Provides database-independent access by hiding vendor specific classes
This code is from code project and written by Jaryl Sim.
Ken Jones added the MYSQL database support.
</summary>
</member>
<member name="M:BinaryLib.DataProvider.Command.#ctor(System.String)">
<summary>
Constructor
</summary>
</member>
<member name="M:BinaryLib.DataProvider.Command.AddParameter(System.String,System.Object)">
<summary>
Adds a parameter to the Command
</summary>
</member>
<member name="P:BinaryLib.DataProvider.Command.Parameters">
<summary>A hashtable containg parameters</summary>
</member>
<member name="P:BinaryLib.DataProvider.Command.CommandString">
<summary>SQL command string</summary>
</member>
<member name="P:BinaryLib.DataProvider.Command.Provider">
<summary>Reference to the DataProvider instance that owns this Command</summary>
</member>
<member name="T:BinaryLib.clsMP3Genre">
<summary>
clsMp3Genre - array of V 1 genre strings
V 1 tags use a number for genre and this decodes it
</summary>
</member>
<member name="M:BinaryLib.clsMP3Genre.Genre(System.Int32)">
<summary>
Genre indexer for integers
</summary>
<param name="index"></param>
<returns>A string name of the Genre</returns>
</member>
<member name="M:BinaryLib.clsMP3Genre.Genre(System.String)">
<summary>
Genre indexer for strings
</summary>
<param name="index"></param>
<returns>A string name of the Genre</returns>
</member>
<member name="M:BinaryLib.clsMP3Genre.getGenre(System.String)">
<summary>
find the requested Genre
</summary>
<param name="ndx">requested genre as two digit string</param>
<returns>name of genre</returns>
</member>
<member name="P:BinaryLib.clsMP3Genre.Ext">
<summary>
Ext returns the genre table
</summary>
</member>
<member name="T:BinaryLib.SqlConnectionString">
<summary>
Manages Sql Connection String for MSSQL
</summary>
</member>
<member name="T:BinaryLib.BinStructSize">
<summary>
Class to determine the size of a structure one time
use new BinStructSize(MyStruct);
This DOES NOT WORK if the struct contains references
or dynamically constructed elements
</summary>
</member>
<member name="F:BinaryLib.BinStructSize._size">
<summary>
_size - internal size of object
</summary>
</member>
<member name="M:BinaryLib.BinStructSize.#ctor(System.Object)">
<summary>
BinStructSize - constructor to determine size of given object
</summary>
<param name="st">object to determine size of</param>
</member>
<member name="P:BinaryLib.BinStructSize.Size">
<summary>
Size - read only property to return the size of the structure
</summary>
</member>
<member name="T:BinaryLib.pptGlobal">
<summary>
Class to provide access to PPT global variables
</summary>
</member>
<member name="F:BinaryLib.pptGlobal.UserName">
<summary> PPT User Name</summary>
</member>
<member name="F:BinaryLib.pptGlobal.DbUser">
<summary> Database User name</summary>
</member>
<member name="F:BinaryLib.pptGlobal.Password">
<summary>
Database password
</summary>
</member>
<member name="F:BinaryLib.pptGlobal.PersonId">
<summary>
Unique PPt user id
</summary>
</member>
<member name="F:BinaryLib.pptGlobal.iPhotoFile">
<summary>
Path and file name to the users photo
</summary>
</member>
<member name="F:BinaryLib.pptGlobal.userConnect">
<summary>
Connection string for this user
</summary>
</member>
<member name="F:BinaryLib.pptGlobal.rootConnect">
<summary>
connection string for the root user
</summary>
</member>
<member name="F:BinaryLib.pptGlobal.admin">
<summary>
Admin or not
</summary>
</member>
<member name="F:BinaryLib.pptGlobal.Host">
<summary>
Server name
</summary>
</member>
<member name="T:BinaryLib.clsRawTags">
<summary>
Derived Class to access the tags database.
This is under construction.
</summary>
</member>
<member name="M:BinaryLib.clsRawTags.#ctor">
<summary>
Empty class
</summary>
</member>
<member name="M:BinaryLib.clsRawTags.#ctor(System.String)">
<summary>
Derived Connected class
</summary>
<param name="s">Connection string</param>
</member>
<member name="T:BinaryLib.clsRawMp3Data">
<summary>
Derived class to use for a specific Table in the database
</summary>
</member>
<member name="M:BinaryLib.clsRawMp3Data.#ctor">
<summary>
Empty constructor
</summary>
</member>
<member name="M:BinaryLib.clsRawMp3Data.#ctor(System.String)">
<summary>
Build with connection string
</summary>
<param name="s">Connection string</param>
</member>
<member name="M:BinaryLib.clsRawMp3Data.#ctor(System.String,System.String,System.String,System.String)">
<summary>
Build with individual parms.
</summary>
<param name="h"></param>
<param name="u"></param>
<param name="p"></param>
<param name="d"></param>
</member>
<member name="T:BinaryLib.clsCollectionTypes">
<summary>
clsCollectionTypes - Defines a Type of collection.
Collection types must be defined to be part of PPT.
</summary>
</member>
<member name="T:BinaryLib.clsAccBase">
<summary>
clsAccBase - Base class to provide database Access for the PPT classes
</summary>
</member>
<member name="M:BinaryLib.clsAccBase.Dispose">
<summary>
clean up this object
</summary>
</member>
<member name="M:BinaryLib.clsAccBase.Finalize">
<summary>
Destructor
</summary>
</member>
<member name="M:BinaryLib.clsAccBase.#ctor">
<summary>
ParameterLess constructor is NOT a good idea
If used it will default to the ppt admin user
</summary>
</member>
<member name="M:BinaryLib.clsAccBase.#ctor(System.String)">
<summary>
Build with a connection string.
</summary>
<param name="connectionString"></param>
</member>
<member name="M:BinaryLib.clsAccBase.AdjPath(System.String)">
<summary>
Takes a path and makes it acceptable to mysql
</summary>
<param name="pth">external path</param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsAccBase.ExtPath(System.String)">
<summary>
Takes a path from the database and makes it usable
</summary>
<param name="pth">Path field from the database</param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsAccBase.GetLastInsert">
<summary>
Gets the value assigned by auto increment to the last inserted item
EXCEPTION: If you insert more than one row at a time this returns
the ID of the FIRST row inserted NOT the LAST.
</summary>
<returns>Id of inserted row</returns>
</member>
<member name="M:BinaryLib.clsAccBase.Insert">
<summary>
Use insertion sql as it is given. No parameters need be added.
Executes Mysql native mode commands
</summary>
</member>
<member name="M:BinaryLib.clsAccBase.Insert(System.String)">
<summary>
Specify sql to execute
This must be of type non query such as insert delete or update
</summary>
<param name="sql"></param>
</member>
<member name="M:BinaryLib.clsAccBase.Insert(MySql.Data.MySqlClient.MySqlCommand)">
<summary>
Insert using a pre built command object
</summary>
<param name="obj">MySqlCommand object prebuilt</param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsAccBase.Insert(System.String[])">
<summary>
Execute the sqlInsert sql with replacement parameters.
Repeating pairs of strings like:
"?name"."Bob","?Age","25"...
The ? variables are for MYSQL. in MS SQL these would be "@name" or "@Age"
</summary>
<param name="items">Repeating pairs of parameter name and value</param>
</member>
<member name="M:BinaryLib.clsAccBase.DeleteRow(System.String[])">
<summary>
Delete an item from the table
At least ONE parameter MUST be given and it must match the sql
set up in the constructor.
There has to be a unique key given for the item to delete.
</summary>
<param name="items">Pairs of strings specifying key and vale for replacement items</param>
<returns>Number of rows affected</returns>
</member>
<member name="M:BinaryLib.clsAccBase.UpdateRow">
<summary>
Update with no variables - not very practical
</summary>
<returns>Count of rows changed</returns>
</member>
<member name="M:BinaryLib.clsAccBase.UpdateRow(System.String[])">
<summary>
Update with params set name = ?name where TypeId = ?id
</summary>
<param name="items">key value pairs of strings</param>
<returns>Count of rows changed</returns>
</member>
<member name="M:BinaryLib.clsAccBase.QueryDS(System.String)">
<summary>
QueryDS - Native mode query to fill a DATA SET
</summary>
<param name="sql">sql to retrieve data</param>
<returns>filled in dataset</returns>
</member>
<member name="M:BinaryLib.clsAccBase.QueryDsForList(System.Data.DataSet,System.String)">
<summary>
Extract a list of strings from a dataset for a list
</summary>
<param name="ds">Dataset with input</param>
<param name="columnName">Column name to extract</param>
<returns>list of strings containing the data or null</returns>
</member>
<member name="M:BinaryLib.clsAccBase.QueryClassList(System.String,System.Object)">
<summary>
Get an ArrayList of all objects selected.
</summary>
<param name="sql">SQL to execute usually in Sql</param>
<param name="obj">new class of the type desired for the return array</param>
<returns>ArrayList of objects. can be cast to desired object</returns>
</member>
<member name="M:BinaryLib.clsAccBase.QueryClass(System.String,System.Object)">
<summary>
QueryClass - get one item of specified class
</summary>
<param name="sql">select for one item</param>
<param name="obj">new anyObject to provide type data</param>
<returns>object of the requested type</returns>
</member>
<member name="M:BinaryLib.clsAccBase.runTransactions(System.String[])">
<summary>
runTransactions - execute multiple sql statements with a transaction
This should be followed by a commit or rollback
HAS BEEN TESTED
</summary>
<param name="sqla">An array of sql commands insert/update/delete</param>
</member>
<member name="P:BinaryLib.clsAccBase.Sql">
<summary>
Get or set general sql - mostly for selects
</summary>
</member>
<member name="P:BinaryLib.clsAccBase.SqlUpdate">
<summary>
Sql for Update command
</summary>
</member>
<member name="P:BinaryLib.clsAccBase.SqlDelete">
<summary>
Get or set the delete sql string
</summary>
</member>
<member name="P:BinaryLib.clsAccBase.SqlInsert">
<summary>
Sql to insert a record. May contain replacement variables
</summary>
</member>
<member name="P:BinaryLib.clsAccBase.Count">
<summary>
Get count of rows in the table
</summary>
</member>
<member name="P:BinaryLib.clsAccBase.SqlCount">
<summary>
Set up sql to get a count of rows in the database
</summary>
</member>
<member name="P:BinaryLib.clsAccBase.Acc">
<summary>
Acc - MYSQL database access mechanism
</summary>
</member>
<member name="P:BinaryLib.clsAccBase.login">
<summary>
clsMySqlLogin contains login data
The login class is stored in the clsMySqlAccess class
MYSQL connect string. Used for all access to database
</summary>
</member>
<member name="M:BinaryLib.clsCollectionTypes.#ctor">
<summary>
Should only be used carefully since it will not have a connection string
If at all possible use the constructor below
</summary>
</member>
<!-- Badly formed XML comment ignored for member "M:BinaryLib.clsCollectionTypes.#ctor(System.String)" -->
<member name="M:BinaryLib.clsCollectionTypes.Init">
<summary>
Provides the initial sql strings
All classes derived from clsAccBase should be set up as shown below
</summary>
</member>
<member name="M:BinaryLib.clsCollectionTypes.Get">
<summary>
Get all rows as an ArrayList of this class for each row
</summary>
<returns>array of these classes</returns>
</member>
<member name="M:BinaryLib.clsCollectionTypes.Get(System.UInt32)">
<summary>
Get by specific type id
</summary>
<param name="tid">Type Id to select</param>
<returns>Nothing - This class filled in</returns>
</member>
<member name="M:BinaryLib.clsCollectionTypes.Get(System.String)">
<summary>
Get by specific name
</summary>
<param name="nm">Name to select</param>
<returns>nothing This class contains the data</returns>
</member>
<member name="M:BinaryLib.clsCollectionTypes.Add">
<summary>
Inserts the current Name aS A NEW ROW
Use these because after the insert they retrieve the
auto incremented key that was inserted.
</summary>
<returns>Id of the inserted row</returns>
</member>
<member name="M:BinaryLib.clsCollectionTypes.Add(System.String)">
<summary>
Inserts the given Name aS A NEW ROW
</summary>
<param name="nm">Collection type name to insert</param>
<returns></returns>
</member>
<member name="P:BinaryLib.clsCollectionTypes.Name">
<summary>
All Properties MUST match the database definition Names, order and it is case
sensitive.
Defines a collection type.
This is contacts, ebooks, MP3 files etc.
</summary>
</member>
<member name="P:BinaryLib.clsCollectionTypes.TypeId">
<summary>
Public unique key for collection types.
This is an unsigned int and is an autoincrement field.
It is the primary key field.
</summary>
</member>
<member name="T:BinaryLib.clsMP3">
<summary>
clsMP3 - MP3 File handler. Parses MP3 files into various components
</summary>
</member>
<member name="F:BinaryLib.clsMP3.path">
<summary>
path - path to file
</summary>
</member>
<member name="F:BinaryLib.clsMP3.version">
<summary>
version - version of MP3 file
</summary>
</member>
<member name="F:BinaryLib.clsMP3.layers">
<summary>
layers - MP3 layers
</summary>
</member>
<member name="F:BinaryLib.clsMP3.channelModes">
<summary>
MP3 channel modes
</summary>
</member>
<member name="F:BinaryLib.clsMP3.mp3">
<summary>
mp3 - filestream for reading file
</summary>
</member>
<member name="F:BinaryLib.clsMP3.haveV2Tags">
<summary>
indicates presence of Version 2 tags within file
</summary>
</member>
<member name="F:BinaryLib.clsMP3.isOpen">
<summary>
file open status
</summary>
</member>
<member name="F:BinaryLib.clsMP3.extendedHdr">
<summary>
are extended headers present
</summary>
</member>
<member name="F:BinaryLib.clsMP3.experimental">
<summary>
is experimental data present
</summary>
</member>
<member name="F:BinaryLib.clsMP3.footer">
<summary>
has footer been read
</summary>
</member>
<member name="F:BinaryLib.clsMP3.startTags">
<summary>
offset to start of tags
</summary>
</member>
<member name="F:BinaryLib.clsMP3.currentPos">
<summary>
current file position
</summary>
</member>
<member name="F:BinaryLib.clsMP3.tagsEof">
<summary>
points one byte past tags
</summary>
</member>
<member name="F:BinaryLib.clsMP3.v2Tags">
<summary>
v2Tags - List of the Version 2 tags present
</summary>
</member>
<member name="F:BinaryLib.clsMP3.headerSize">
<summary>
size of the header
</summary>
</member>
<member name="F:BinaryLib.clsMP3.tagLblSize">
<summary>
version 1 = 3 bytes 2+ = 4 bytes
</summary>
</member>
<member name="F:BinaryLib.clsMP3.tagFlgSize">
<summary>
version 1 = 0 v 2+ = 2
</summary>
</member>
<member name="F:BinaryLib.clsMP3.titlev1">
<summary>
version 1 properties
These all come from the file trailer record
titlev1 - song name
</summary>
</member>
<member name="F:BinaryLib.clsMP3.artistv1">
<summary>
artistv1 - Singer
</summary>
</member>
<member name="F:BinaryLib.clsMP3.albumv1">
<summary>
albumv1 - repeat of albun name
</summary>
</member>
<member name="F:BinaryLib.clsMP3.yearv1">
<summary>
yaerv1 - year album released
</summary>
</member>
<member name="F:BinaryLib.clsMP3.commentv1">
<summary>
internal comments about the album
</summary>
</member>
<member name="F:BinaryLib.clsMP3.trackv1">
<summary>
trackv1 - track for this song
</summary>
</member>
<member name="F:BinaryLib.clsMP3.genrev1">
<summary>
short form of Genre
</summary>
</member>
<member name="F:BinaryLib.clsMP3.primaryGenre">
<summary>
expanded genre. country, rock, etc
</summary>
</member>
<member name="F:BinaryLib.clsMP3.bfr">
<summary>
byte array for binary file reads
</summary>
</member>
<member name="F:BinaryLib.clsMP3.raw">
<summary>
raw sata from file
</summary>
</member>
<member name="M:BinaryLib.clsMP3.#ctor">
<summary>
clsMP3 - create an empty MP3 class
</summary>
</member>
<member name="M:BinaryLib.clsMP3.#ctor(System.String)">
<summary>
clsMP3 - create an MP3 class that knows its file name
</summary>
<param name="filename"></param>
</member>
<member name="M:BinaryLib.clsMP3.init">
<summary>
init - initialize class. currently empty
</summary>
</member>
<member name="M:BinaryLib.clsMP3.v2Count">
<summary>
v2Count get a count of the number of tags present
</summary>
<returns>int the count</returns>
</member>
<member name="M:BinaryLib.clsMP3.findTag(System.String)">
<summary>
findTag - find and return a specific tag
</summary>
<param name="tg">The tag name to find</param>
<returns>clsMp3v2Tag class or null if not found</returns>
</member>
<member name="M:BinaryLib.clsMP3.saveImage(System.String)">
<summary>
saveImage - saves an embedded image in an external file
</summary>
<param name="path">path and file name to save</param>
<returns>true if OK false if error</returns>
</member>
<member name="M:BinaryLib.clsMP3.open">
<summary>
open - opens a filestream on an mp3 file after class is constructed
</summary>
<returns>true if OK else false</returns>
</member>
<member name="M:BinaryLib.clsMP3.processFile">
<summary>
processFile handle the mp3 file
This drives the whole mp3 processing
</summary>
<returns>false for errors or true for succes</returns>
</member>
<member name="M:BinaryLib.clsMP3.processTags">
<summary>
process the tags in the file
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMP3.getV2Tags">
<summary>
getV2Tags - reads the v2 tags and adds to the list
</summary>
</member>
<member name="M:BinaryLib.clsMP3.getEnt(System.Int32,System.Int32)">
<summary>
getEnt - convert specific raw bytes to a string
data is in the raw array
</summary>
<param name="strt">start position</param>
<param name="len">number of bytes to convert</param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMP3.getV1Tags">
<summary>
getV1Tags - get the version 1 tags.
exits with file position pointing at start of tags
</summary>
</member>
<member name="M:BinaryLib.clsMP3.processHeader">
<summary>
processHeader read MP3 header
This code supports mp3 2.2, 2.3, and 2.4
</summary>
<returns>true if it is an mp3 file</returns>
</member>
<member name="M:BinaryLib.clsMP3.syncSafeLength(System.Byte[])">
<summary>
syncSafeLength 28 bit length in 4 bytes
Each high order bit is zero so
0x7f 0x7f 0x7f 0x7f translates to
0x0f 0xff 0xff 0xff
</summary>
<param name="bfr"></param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMP3.cvtLen">
<summary>
cvtLen normal big endian length for all else
</summary>
<param name="bfr"></param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMP3.getstr(System.Byte[]@,System.Int32)">
<summary>
getstr - convert array of bytes to string
</summary>
<param name="t">byte array input</param>
<param name="len">number of bytes to convert</param>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMP3.getData(System.Int32)">
<summary>
getData - reads chunks of the mp3 file into bfr for specified length.
file is positioned to byte after len
</summary>
<param name="len">number of bytes to read</param>
<returns>number of bytes read</returns>
</member>
<member name="P:BinaryLib.clsMP3.Genre">
<summary>
Public properties for the above
</summary>
</member>
<member name="T:BinaryLib.clsUserPhotoId">
<summary>
Class to represent rows in the UserPhotoId table.
Assigns a photograph id and path to a user in PPT.
This class is used in conjunction with the DataProvider class
to give a database independant way to insert or update the
data rows in the table. The data appears as a normal class object.
</summary>
</member>
<member name="M:BinaryLib.clsUserPhotoId.#ctor">
<summary>
Empty constructor
</summary>
</member>
<member name="M:BinaryLib.clsUserPhotoId.#ctor(System.Int32,System.String)">
<summary>
build class for specific user
</summary>
<param name="usr"></param>
<param name="path"></param>
</member>
<member name="P:BinaryLib.clsUserPhotoId.Pic64Path">
<summary>
Path to users photo
</summary>
</member>
<member name="P:BinaryLib.clsUserPhotoId.UserId">
<summary>
id for this user
</summary>
</member>
<member name="P:BinaryLib.clsUserPhotoId.PhotoId">
<summary>
assigned photoId
</summary>
</member>
<member name="T:BinaryLib.clsRawMp3Root">
<summary>
Derived class for the root a a given collection
</summary>
</member>
<member name="F:BinaryLib.clsRawMp3Root.rootPath">
<summary>
path to root of collection on disk
</summary>
</member>
<member name="F:BinaryLib.clsRawMp3Root.rootid">
<summary>
user id of the root user
</summary>
</member>
<member name="F:BinaryLib.clsRawMp3Root.fromDrive">
<summary>
drive for source of collection
</summary>
</member>
<member name="F:BinaryLib.clsRawMp3Root.toDrive">
<summary>
target drive for destination collection
</summary>
</member>
<member name="M:BinaryLib.clsRawMp3Root.#ctor(System.String)">
<summary>
Create with connection string.
This is where data extracted from the files will reside.
</summary>
<param name="c">Connection string</param>
</member>
<member name="M:BinaryLib.clsRawMp3Root.#ctor(System.String,System.String,System.String,System.String)">
<summary>
Construct with details.
</summary>
<param name="h">host or server</param>
<param name="u">user name</param>
<param name="p">user password</param>
<param name="d">database to use</param>
</member>
<member name="M:BinaryLib.clsRawMp3Root.load(System.String)">
<summary>
load fills the dataset using sql supplied
</summary>
<param name="sql">sql to execute</param>
</member>
<member name="T:BinaryLib.clsMySqlLogin">
<summary>
clsMySqlLogin - class to store all the inf necessary to
log in to a MYSQL database.
This class DOES NOT access the database in any way.
It is assumed the user will have a login screen to capture
the necessary information.
It can be construct three ways:
1. provide a complete connection string which has all the parameters
2. provide seperate strings for host,userId,password,database, and pooling
3. Use the properties to individually set Host,User,Pws,DbName,Pooling
For type 2 and 3 when the last value is entered a connection string is
built and can be accessed as ConnectString.
For type 1 the connection string is parsed and the individual fields are set.
If the user supplies a connection string without the database name or pooling
parameter the connect string can be used to connect to the database as long
as the user issues a SQL "use database" command before anything else.
Once a connection string has been made it can not be changed. Make a new
clsMySqlLogin to do this.
</summary>
</member>
<member name="M:BinaryLib.clsMySqlLogin.#ctor">
<summary>
Default constructor builds an administrator login
</summary>
</member>
<member name="M:BinaryLib.clsMySqlLogin.#ctor(System.String)">
<summary>
clsMySqlLogin - construct using full connect string
The connect string is parsed to fill in host,user,password,database and pooling
a connect string looks like
server=localhost; user id=name; password=xxx; pooling=true
no trailing ;
</summary>
<param name="str">complete connect string</param>
</member>
<member name="M:BinaryLib.clsMySqlLogin.#ctor(System.String,System.String,System.String,System.String,System.Boolean)">
<summary>
clsMySqlLogin - constructor to supply individual items
When this is done the ConnectString will be valid
</summary>
<param name="srvName">localhost etc</param>
<param name="usrId">database user id</param>
<param name="pwd">users password</param>
<param name="dbName">name of the database to use</param>
<param name="pool">true or false</param>
</member>
<member name="M:BinaryLib.clsMySqlLogin.#ctor(System.String,System.String)">
<summary>
Make a connection string from user and password
</summary>
<param name="usr">database user name</param>
<param name="pwd">password</param>
</member>
<member name="M:BinaryLib.clsMySqlLogin.Emit">
<summary>
Build a default connection string
Can not assume that pptGlobal has been set
This builds one from scratch
</summary>
<returns>nothing</returns>
</member>
<member name="M:BinaryLib.clsMySqlLogin.mkConn">
<summary>
Make a connection string if not given. Combines values for host,user,password,database, and pooling.
</summary>
</member>
<member name="M:BinaryLib.clsMySqlLogin.mkConn(System.String,System.String)">
<summary>
mkConn - make a ppt default connection to localhost and ppt database
Pooling is set true.
</summary>
<param name="usr">Database user name</param>
<param name="pwd">password if any</param>
</member>
<member name="P:BinaryLib.clsMySqlLogin.ConnectString">
<summary>
MYSQL connection string. SHould be complete.
</summary>
</member>
<member name="P:BinaryLib.clsMySqlLogin.Host">
<summary>
Host name such as localhost or a server name
</summary>
</member>
<member name="P:BinaryLib.clsMySqlLogin.User">
<summary>
User name as defined in the database
</summary>
</member>
<member name="P:BinaryLib.clsMySqlLogin.Pwd">
<summary>
Password for the user of the database
Warning! This string is NOT encrypted
</summary>
</member>
<member name="P:BinaryLib.clsMySqlLogin.Dbname">
<summary>
Name of the database to connect.
</summary>
</member>
<member name="P:BinaryLib.clsMySqlLogin.Pooling">
<summary>
Whether or not to use connection pooling. Usually true.
</summary>
</member>
<member name="T:BinaryLib.clsMyCollection">
<summary>
Class defining a collection and its location
</summary>
</member>
<member name="F:BinaryLib.clsMyCollection.PathToTopDir">
<summary>
microsoft string with path
This needs to be adjusted before going to mysql
this will be stored in the collectionpaths table
</summary>
</member>
<member name="M:BinaryLib.clsMyCollection.#ctor">
<summary>
Constructor
</summary>
</member>
<member name="M:BinaryLib.clsMyCollection.#ctor(System.String)">
<summary>
Constructor with connection string
</summary>
<param name="connectionString"></param>
</member>
<member name="M:BinaryLib.clsMyCollection.#ctor(BinaryLib.clsMyCollection)">
<summary>
copy constructor
This is a deep copy
</summary>
<param name="mc">pass connection string to base class</param>
</member>
<member name="M:BinaryLib.clsMyCollection.IsValid">
<summary>
determines if class data fields are all present
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMyCollection.Init">
<summary>
Provides the initial sql strings
All classes derived from clsAccBase should be set up as shown below
These are set up for string format commands
</summary>
</member>
<member name="M:BinaryLib.clsMyCollection.FillOne(BinaryLib.clsMyCollection)">
<summary>
Fill out this instance of the class
</summary>
<param name="tmp">class to copy</param>
</member>
<member name="M:BinaryLib.clsMyCollection.Get">
<summary>
Get all rows as an ArrayList of this class for each row
</summary>
<returns>array of these classes</returns>
</member>
<member name="M:BinaryLib.clsMyCollection.Get(System.UInt32)">
<summary>
Get by specific definition id
</summary>
<param name="did">Type Id to select</param>
<returns>Nothing - This class filled in</returns>
</member>
<member name="M:BinaryLib.clsMyCollection.Get(System.String)">
<summary>
Get by specific collection name
</summary>
<param name="nm">Name to select</param>
<returns>nothing This class contains the data</returns>
</member>
<member name="M:BinaryLib.clsMyCollection.AddProc">
<summary>
Not implemented
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsMyCollection.Add">
<summary>
Inserts the current Name aS A NEW ROW
Use these because after the insert they retrieve the
auto incremented key that was inserted.
</summary>
<returns>Id of the inserted row</returns>
</member>
<member name="M:BinaryLib.clsMyCollection.Add(System.String,System.String,System.String)">
<summary>
Inserts the given data aS A NEW ROW
The keys MUST have been set except for DefId
</summary>
<param name="nm">Collection name to insert</param>
<param name="drive">disk drive for collection</param>
<param name="pth">Top level directory for the collection</param>
<returns>DefId the auto incremented key</returns>
</member>
<member name="P:BinaryLib.clsMyCollection.CollectionPaths">
<summary>
The collection paths table is maintained by this class
since there is a one to one relationship
</summary>
</member>
<member name="P:BinaryLib.clsMyCollection.DiskDrive">
<summary>
Disk drive containing the collection
</summary>
</member>
<member name="P:BinaryLib.clsMyCollection.CollectionName">
<summary>
External name for this collection - displayed
</summary>
</member>
<member name="P:BinaryLib.clsMyCollection.TypeId">
<summary>
ID of collection type
</summary>
</member>
<member name="P:BinaryLib.clsMyCollection.Uid">
<summary>
PPT user ID of the owner of this collection
</summary>
</member>
<member name="P:BinaryLib.clsMyCollection.DefId">
<summary>
Primary key
</summary>
</member>
<member name="T:BinaryLib.frameEntry">
<summary>
frameEntry - description of mp3 tag names and action to take
This describes one entry in the list of tags in an mp3
</summary>
</member>
<member name="F:BinaryLib.frameEntry.tagName">
<summary>
tagName - name of the tag 3 or 4 bytes
</summary>
</member>
<member name="F:BinaryLib.frameEntry.dbColumnName">
<summary>
dcColumnName - name in the database
</summary>
</member>
<member name="F:BinaryLib.frameEntry.mustDecode">
<summary>
mustDecode - is further decoding required?
</summary>
</member>
<member name="M:BinaryLib.frameEntry.#ctor(System.String,System.String,System.Boolean)">
<summary>
frameEntry - ctor for one entry in frame table
</summary>
<param name="tag">name of tag</param>
<param name="col">DB column name</param>
<param name="dc">is decoding required?</param>
</member>
<member name="M:BinaryLib.frameEntry.#ctor(System.String,System.String)">
<summary>
frameEntry - ctor for one entry in frame table
</summary>
<param name="tag">name of tag</param>
<param name="col">DB column name</param>
</member>
<member name="T:BinaryLib.clsMP3Frame">
<summary>
clsMp3Frame - static class to define mp3 tags
contains a list of all the tag names found in an mp3
</summary>
</member>
<member name="F:BinaryLib.clsMP3Frame.frames">
<summary>
frames - table of valid tag names stored as a sorted dictionary
</summary>
</member>
<member name="M:BinaryLib.clsMP3Frame.#cctor">
<summary>
clsMP3Frame - static constructor for single instance of the table
</summary>
</member>
<member name="M:BinaryLib.clsMP3Frame.getFrame(System.String)">
<summary>
getFrame - get the frameEntry for a given tag
</summary>
<param name="tg">tag to find</param>
<returns>the frameEntry class</returns>
</member>
<member name="T:BinaryLib.clsUsers">
<summary>
clsUsers - class to support PPT users
Used with the DataProvidor class to give
a normal class representation of rows from a table.
</summary>
</member>
<member name="M:BinaryLib.clsUsers.#ctor(System.Int32,System.String,System.Char,System.String)">
<summary>
Build a row for insertion
</summary>
<param name="id">PPT user id</param>
<param name="usr">PPT user name</param>
<param name="root">'Y" or 'N' for admin access</param>
<param name="dbname">Database user name</param>
</member>
<member name="M:BinaryLib.clsUsers.#ctor(System.String)">
<summary>
Build with connection string
</summary>
</member>
<member name="M:BinaryLib.clsUsers.#ctor">
<summary>
Empty except for sql strings
</summary>
</member>
<member name="M:BinaryLib.clsUsers.Init">
<summary>
Set the default sql strings
</summary>
</member>
<member name="M:BinaryLib.clsUsers.Get">
<summary>
Get all rows as an ArrayList of this class for each row
</summary>
<returns>array of these classes</returns>
</member>
<member name="M:BinaryLib.clsUsers.Get(System.Int32)">
<summary>
Get by specific type id
</summary>
<param name="uid">User Id to select</param>
<returns>Nothing - This class filled in</returns>
</member>
<member name="M:BinaryLib.clsUsers.Get(System.String)">
<summary>
Get by specific name
</summary>
<param name="unm">ppt user Name to select</param>
<returns>nothing This class contains the data</returns>
</member>
<member name="M:BinaryLib.clsUsers.Add">
<summary>
Inserts the current class aS A NEW ROW
Use the properties to set the valuse first.
Use these because after the insert they retrieve the
auto incremented key that was inserted.
</summary>
<returns>Id of the inserted row</returns>
</member>
<member name="P:BinaryLib.clsUsers.DbUser">
<summary>
Name of database user
</summary>
</member>
<member name="P:BinaryLib.clsUsers.Admin">
<summary>
User has Admin access - default 'Y' else 'N'
</summary>
</member>
<member name="P:BinaryLib.clsUsers.User">
<summary>
PPT user name
</summary>
</member>
<member name="P:BinaryLib.clsUsers.Uid">
<summary>
PPT user id
</summary>
</member>
<member name="T:BinaryLib.clsPaths">
<summary>
class to hold a microsoft Path for Mysql
This make sure embedded single quotes are properly escaped with a backslash
Typical use of this is:
string newVal = new clsPaths(PathNameFromOpenFileDialog).Path);
newVal will contain the data to put in the database
</summary>
</member>
<member name="M:BinaryLib.clsPaths.#ctor(System.String)">
<summary>
constructor with a path name
This saves the path and has properties to set or get it.
</summary>
<param name="pth">Path to store</param>
</member>
<member name="M:BinaryLib.clsPaths.xlate(System.String)">
<summary>
Translate single quotes into escaped sequences
</summary>
<param name="s"></param>
<returns></returns>
</member>
<member name="P:BinaryLib.clsPaths.Path">
<summary>
Holds a microsoft path string
Used to add escape characters to embedded single quotes
to avoid problems storing in the database.
Use Path = x or y = Path to set or get the adjusted path or
use the form shown above.
</summary>
</member>
<member name="T:BinaryLib.clsCollectionPaths">
<summary>
Stores paths to the disk based collections
This table has a one to one relation with definedcollections table
</summary>
</member>
<member name="M:BinaryLib.clsCollectionPaths.#ctor">
<summary>
Empty constructor
</summary>
</member>
<member name="M:BinaryLib.clsCollectionPaths.#ctor(System.String)">
<summary>
Proper constructor for this class
</summary>
<param name="connectionString">database connection string</param>
</member>
<member name="M:BinaryLib.clsCollectionPaths.#ctor(BinaryLib.clsCollectionPaths)">
<summary>
copy self
</summary>
<param name="cp"></param>
</member>
<member name="M:BinaryLib.clsCollectionPaths.dbPath">
<summary>
Get the internal data for storing in the database
</summary>
<returns>database version of the string</returns>
</member>
<member name="M:BinaryLib.clsCollectionPaths.IsValid">
<summary>
Test if required parameters are present
</summary>
<returns></returns>
</member>
<member name="M:BinaryLib.clsCollectionPaths.Init">
<summary>
Provides the initial sql strings
All classes derived from clsAccBase should be set up as shown below
These are set up for string format commands
</summary>
</member>
<member name="M:BinaryLib.clsCollectionPaths.FillOne(BinaryLib.clsCollectionPaths)">
<summary>
Fill out this instance of the class
</summary>
<param name="cp">class to copy</param>
</member>
<member name="M:BinaryLib.clsCollectionPaths.Get">
<summary>
Get all rows as an ArrayList of this class for each row
</summary>
<returns>array of these classes</returns>
</member>
<member name="M:BinaryLib.clsCollectionPaths.Get(System.Int32)">
<summary>
Get by specific definition id
</summary>
<param name="did">definition Id to select</param>
<returns>Nothing - This class filled in</returns>
</member>
<member name="M:BinaryLib.clsCollectionPaths.AddProc">
<summary>
Execute stored proc for inserts
Not yet implemented
</summary>
<returns>rows effected</returns>
</member>
<member name="M:BinaryLib.clsCollectionPaths.Add">
<summary>
Inserts the current Path aS A NEW ROW
Use these because after the insert they retrieve the
auto incremented key that was inserted.
</summary>
<returns>Id of the inserted row</returns>
</member>
<member name="M:BinaryLib.clsCollectionPaths.Add(System.Int32,System.String)">
<summary>
Inserts the given data aS A NEW ROW
The keys MUST have been set except for ukey
</summary>
<param name="id">collection id</param>
<param name="pth">Top level directory for the collection External format</param>
<returns>ukey the auto incremented key</returns>
</member>
<member name="P:BinaryLib.clsCollectionPaths.Path">
<summary>
Path to the top directory of the collection
Going in it is converted to a mysql path
Comint out it is an external path
</summary>
</member>
<member name="P:BinaryLib.clsCollectionPaths.DefId">
<summary>
collection it belongs to
</summary>
</member>
<member name="P:BinaryLib.clsCollectionPaths.ukey">
<summary>
unique primary key
</summary>
</member>
</members>
</doc>