ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

table.c File Reference
#include <stdarg.h>
#include <assert.h>
#include "windef.h"
#include "winbase.h"
#include "winerror.h"
#include "msi.h"
#include "msiquery.h"
#include "objbase.h"
#include "objidl.h"
#include "winnls.h"
#include "msipriv.h"
#include "query.h"
#include "wine/debug.h"
#include "wine/unicode.h"

Go to the source code of this file.

Data Structures

struct  MSICOLUMNHASHENTRY
struct  MSICOLUMNINFO
struct  MSITABLE
struct  MSITABLEVIEW
struct  TRANSFORMDATA

Defines

#define COBJMACROS
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
#define MSITABLE_HASH_TABLE_SIZE   37
#define MAX_STREAM_NAME   0x1f

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (msidb)
static UINT bytes_per_column (MSIDATABASE *db, const MSICOLUMNINFO *col, UINT bytes_per_strref)
static int utf2mime (int x)
LPWSTR encode_streamname (BOOL bTable, LPCWSTR in)
static int mime2utf (int x)
BOOL decode_streamname (LPCWSTR in, LPWSTR out)
void enum_stream_names (IStorage *stg)
UINT read_stream_data (IStorage *stg, LPCWSTR stname, BOOL table, BYTE **pdata, UINT *psz)
UINT write_stream_data (IStorage *stg, LPCWSTR stname, LPCVOID data, UINT sz, BOOL bTable)
static void msi_free_colinfo (MSICOLUMNINFO *colinfo, UINT count)
static void free_table (MSITABLE *table)
static UINT msi_table_get_row_size (MSIDATABASE *db, const MSICOLUMNINFO *cols, UINT count, UINT bytes_per_strref)
static UINT read_table_from_storage (MSIDATABASE *db, MSITABLE *t, IStorage *stg)
void free_cached_tables (MSIDATABASE *db)
static MSITABLE * find_cached_table (MSIDATABASE *db, LPCWSTR name)
static void table_calc_column_offsets (MSIDATABASE *db, MSICOLUMNINFO *colinfo, DWORD count)
static UINT get_defaulttablecolumns (MSIDATABASE *db, LPCWSTR name, MSICOLUMNINFO *colinfo, UINT *sz)
static UINT get_tablecolumns (MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINFO *colinfo, UINT *sz)
static UINT table_get_column_info (MSIDATABASE *db, LPCWSTR name, MSICOLUMNINFO **pcols, UINT *pcount)
static UINT get_table (MSIDATABASE *db, LPCWSTR name, MSITABLE **table_ret)
static UINT read_table_int (BYTE *const *data, UINT row, UINT col, UINT bytes)
UINT msi_create_table (MSIDATABASE *db, LPCWSTR name, column_info *col_info, MSICONDITION persistent)
static UINT save_table (MSIDATABASE *db, const MSITABLE *t, UINT bytes_per_strref)
static void msi_update_table_columns (MSIDATABASE *db, LPCWSTR name)
BOOL TABLE_Exists (MSIDATABASE *db, LPCWSTR name)
static UINT TABLE_fetch_int (struct tagMSIVIEW *view, UINT row, UINT col, UINT *val)
static UINT msi_stream_name (const MSITABLEVIEW *tv, UINT row, LPWSTR *pstname)
static UINT TABLE_fetch_stream (struct tagMSIVIEW *view, UINT row, UINT col, IStream **stm)
static UINT TABLE_set_int (MSITABLEVIEW *tv, UINT row, UINT col, UINT val)
static UINT TABLE_get_row (struct tagMSIVIEW *view, UINT row, MSIRECORD **rec)
static UINT msi_addstreamW (MSIDATABASE *db, LPCWSTR name, IStream *data)
static UINT get_table_value_from_record (MSITABLEVIEW *tv, MSIRECORD *rec, UINT iField, UINT *pvalue)
static UINT TABLE_set_row (struct tagMSIVIEW *view, UINT row, MSIRECORD *rec, UINT mask)
static UINT table_create_new_row (struct tagMSIVIEW *view, UINT *num, BOOL temporary)
static UINT TABLE_execute (struct tagMSIVIEW *view, MSIRECORD *record)
static UINT TABLE_close (struct tagMSIVIEW *view)
static UINT TABLE_get_dimensions (struct tagMSIVIEW *view, UINT *rows, UINT *cols)
static UINT TABLE_get_column_info (struct tagMSIVIEW *view, UINT n, LPCWSTR *name, UINT *type, BOOL *temporary, LPCWSTR *table_name)
static UINT msi_table_find_row (MSITABLEVIEW *tv, MSIRECORD *rec, UINT *row, UINT *column)
static UINT table_validate_new (MSITABLEVIEW *tv, MSIRECORD *rec, UINT *column)
static int compare_record (MSITABLEVIEW *tv, UINT row, MSIRECORD *rec)
static int find_insert_index (MSITABLEVIEW *tv, MSIRECORD *rec)
static UINT TABLE_insert_row (struct tagMSIVIEW *view, MSIRECORD *rec, UINT row, BOOL temporary)
static UINT TABLE_delete_row (struct tagMSIVIEW *view, UINT row)
static UINT msi_table_update (struct tagMSIVIEW *view, MSIRECORD *rec, UINT row)
static UINT msi_table_assign (struct tagMSIVIEW *view, MSIRECORD *rec)
static UINT modify_delete_row (struct tagMSIVIEW *view, MSIRECORD *rec)
static UINT msi_refresh_record (struct tagMSIVIEW *view, MSIRECORD *rec, UINT row)
static UINT TABLE_modify (struct tagMSIVIEW *view, MSIMODIFY eModifyMode, MSIRECORD *rec, UINT row)
static UINT TABLE_delete (struct tagMSIVIEW *view)
static UINT TABLE_find_matching_rows (struct tagMSIVIEW *view, UINT col, UINT val, UINT *row, MSIITERHANDLE *handle)
static UINT TABLE_add_ref (struct tagMSIVIEW *view)
static UINT TABLE_remove_column (struct tagMSIVIEW *view, LPCWSTR table, UINT number)
static UINT TABLE_release (struct tagMSIVIEW *view)
static UINT TABLE_add_column (struct tagMSIVIEW *view, LPCWSTR table, UINT number, LPCWSTR column, UINT type, BOOL hold)
static UINT TABLE_drop (struct tagMSIVIEW *view)
UINT TABLE_CreateView (MSIDATABASE *db, LPCWSTR name, MSIVIEW **view)
UINT MSI_CommitTables (MSIDATABASE *db)
MSICONDITION MSI_DatabaseIsTablePersistent (MSIDATABASE *db, LPCWSTR table)
static UINT read_raw_int (const BYTE *data, UINT col, UINT bytes)
static UINT msi_record_encoded_stream_name (const MSITABLEVIEW *tv, MSIRECORD *rec, LPWSTR *pstname)
static MSIRECORDmsi_get_transform_record (const MSITABLEVIEW *tv, const string_table *st, IStorage *stg, const BYTE *rawdata, UINT bytes_per_strref)
static void dump_record (MSIRECORD *rec)
static void dump_table (const string_table *st, const USHORT *rawdata, UINT rawsize)
static UINTmsi_record_to_row (const MSITABLEVIEW *tv, MSIRECORD *rec)
static UINT msi_row_matches (MSITABLEVIEW *tv, UINT row, const UINT *data, UINT *column)
static UINT msi_table_load_transform (MSIDATABASE *db, IStorage *stg, string_table *st, TRANSFORMDATA *transform, UINT bytes_per_strref)
UINT msi_table_apply_transform (MSIDATABASE *db, IStorage *stg)

Variables

static const WCHAR szTables [] = {'_','T','a','b','l','e','s',0}
static const WCHAR szTable [] = {'T','a','b','l','e',0}
static const WCHAR szColumns [] = {'_','C','o','l','u','m','n','s',0}
static const WCHAR szNumber [] = {'N','u','m','b','e','r',0}
static const WCHAR szType [] = {'T','y','p','e',0}
static const MSICOLUMNINFO _Columns_cols [4]
static const MSICOLUMNINFO _Tables_cols [1]
static const MSIVIEWOPS table_ops

Generated on Sun May 27 2012 05:14:51 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.