/home/coin/SVN-release/Bcp-1.2.1/Bcp/src/include/BCP_indexed_pricing.hpp

Go to the documentation of this file.
00001 // Copyright (C) 2000, International Business Machines
00002 // Corporation and others.  All Rights Reserved.
00003 #ifndef _BCP_INDEXED_PRICING_H
00004 #define _BCP_INDEXED_PRICING_H
00005 
00006 #if 0
00007 #include "BCP_enum.hpp"
00008 #include "BCP_vector.hpp"
00009 
00010 class BCP_buffer;
00011 
00012 class BCP_indexed_pricing_list {
00013 private:
00014    inline void clean() { _del_pos.clear(); _indices.clear(); }
00015 private:
00016    BCP_pricing_status _pr_status;
00017    BCP_storage_t _storage;
00018    BCP_vec<int> _del_pos;
00019    BCP_vec<int> _indices;
00020 public:
00021    BCP_indexed_pricing_list() :
00022       _pr_status(BCP_PriceNothing), _storage(BCP_Storage_Explicit),
00023       _del_pos(), _indices() {}
00024    ~BCP_indexed_pricing_list() {}
00025 
00026    // default assignment operator and copy constructors are fine
00027 
00028    inline BCP_pricing_status get_status() const { return _pr_status; }
00029    inline BCP_storage_t get_storage() const{ return _storage; }
00030    inline const BCP_vec<int>& get_indices() const { return _indices; }
00031 
00032    inline void empty(const BCP_storage_t storage) {
00033       clean();
00034       _storage = storage;
00035    }
00036 
00037    inline void set_status(BCP_pricing_status new_stat) {
00038      _pr_status = new_stat; }
00039    inline void set_indices(BCP_vec<int>& new_indices) {
00040      _indices.swap(new_indices); }
00041 
00042    void swap(BCP_indexed_pricing_list& x);
00043    void update(const BCP_indexed_pricing_list& change); 
00044    BCP_indexed_pricing_list*
00045    as_change(const BCP_indexed_pricing_list& old_list) const;
00046 
00047    int pack_size() const;      // *INLINE ?*
00048    void pack(BCP_buffer& buf) const;      // *INLINE ?*
00049    void unpack(BCP_buffer& buf);      // *INLINE ?*
00050 };
00051 #endif
00052 
00053 #endif

Generated on Thu Jan 15 03:00:58 2009 for coin-Bcp by  doxygen 1.4.7