Contents

Chapter 1: 
 
  • 1.1 C++ Binding Architecture
  • 1.1.1 The Caché C++ Library
  • 1.2 Installation and Configuration
  • 1.2.1 Building the Caché C++ Binding from Source
  • 1.2.2 Configuring Microsoft Visual Studio 2005
  • 1.2.3 Using the C++ Binding with ACE Libraries
  • 1.3 Installing the Light C++ Binding
  • 1.3.1 Additional LCB Requirements
  • 1.3.2 Installation on the Windows 64 bit Platform
  • 1.3.3 Running Trusted Applications on UNIX
  • 1.4 Sample Programs
  • Chapter 2: 
     
  • 2.1 Introduction
  • 2.2 Standard Proxy Class Methods
  • 2.3 The d_ref<> Template Class
  • 2.4 Implementing Proxy Methods
  • 2.5 Implementing Proxy Properties
  • 2.6 Naming Conventions
  • 2.7 Using the C++ Generator
  • Chapter 3: 
     
  • 3.1 C++ Binding Basics
  • 3.1.1 Connecting to the Caché Database
  • 3.1.2 A Sample C++ Binding Application
  • 3.2 Using Collections
  • 3.2.1 Interface
  • 3.2.2 Examples
  • 3.2.3 Using Collection Elements in Methods
  • 3.2.4 Data in Collection Proxies
  • 3.3 Using Streams
  • 3.4 Using Relationships
  • 3.5 Using Queries
  • 3.6 Using Transactions
  • 3.6.1 Using Database Class Methods
  • 3.6.2 Using Transaction Class Methods
  • Chapter 4: 
     
  • 4.1 Construction of a Dyn_obj Proxy
  • 4.2 Construction of Values from Calling Dyn_obj Methods
  • 4.3 Properties and Methods
  • Chapter 5: 
     
  • 5.1 Light C++ Binding Architecture
  • 5.2 LCB Classes in the Caché C++ Library
  • 5.3 Connections and Multithreading
  • 5.3.1 Multithreading
  • 5.3.2 Connections and Multiple Threads
  • 5.3.3 Attaching and Detaching LCB Objects
  • 5.3.4 Transactions and Multithreading
  • 5.4 Standard LCB Projection Class Methods
  • 5.5 Using Queries in LCB Applications
  • 5.6 Using LCB Batch Insert
  • 5.7 LCB and Concurrency
  • 5.7.1 Update Semantics
  • 5.8 Optimization and Troubleshooting
  • 5.8.1 Detecting “object not found” Errors
  • 5.8.2 Calling the LC_Database and d_connection Destructors
  • 5.8.3 Using lc_conn::connect
  • Chapter 6: 
     
  • 6.1 Numeric Classes
  • 6.1.1 Class InterSystems::d_int
  • 6.2 Binary Classes
  • 6.2.1 Class InterSystems::d_binary
  • 6.2.2 Class InterSystems::d_status
  • 6.2.3 Class InterSystems::d_string
  • 6.2.4 Class InterSystems::d_list
  • 6.3 Time and Date Classes
  • 6.3.1 Class InterSystems::d_time
  • 6.3.2 Class InterSystems::d_date
  • 6.3.3 Class InterSystems::d_timestamp
  • Chapter 7: 
     
  • 7.1 Collection Classes
  • 7.1.1 Class Template d_vector<S> (List Collections)
  • 7.1.2 Class Template d_map<S> (Array Collections)
  • 7.2 Streams
  • 7.2.1 Stream Adapter Classes
  • 7.2.2 Class d_stream
  • 7.3 Class Template d_relationship<S>
  • Chapter 8: 
     
  • 8.1 Proxy Base Classes
  • 8.1.1 Class InterSystems::Persistent_t
  • 8.1.2 Class InterSystems::Registered_t
  • 8.1.3 Class InterSystems::LC_Persistent_t
  • 8.2 Database Classes
  • 8.2.1 InterSystems::Database Class
  • 8.2.2 InterSystems::LC_Database Class
  • 8.3 Connection Classes
  • 8.3.1 Class d_connection
  • 8.3.2 Class InterSystems::Conn_t
  • 8.3.3 Class InterSystems::tcp_conn
  • 8.3.4 Class InterSystems::lc_conn
  • 8.4 Object Reference Classes
  • 8.4.1 Class Template InterSystems::d_ref<T>
  • 8.4.2 Class Template InterSystems::lc_d_ref<T>
  • Chapter 9: 
     
  • 9.1 Data Processing Classes
  • 9.1.1 Class InterSystems::Transaction
  • 9.1.2 Class InterSystems::LC_Batch
  • 9.1.3 Class InterSystems::d_query
  • 9.2 Error Classes
  • 9.2.1 Class InterSystems::Db_err