SDSL: Succinct Data Structure Library
A C++ template library for succinct data structures
|
00001 /* sdsl - succinct data structures library 00002 Copyright (C) 2011 Simon Gog 00003 00004 This program is free software: you can redistribute it and/or modify 00005 it under the terms of the GNU General Public License as published by 00006 the Free Software Foundation, either version 3 of the License, or 00007 (at your option) any later version. 00008 00009 This program is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 GNU General Public License for more details. 00013 00014 You should have received a copy of the GNU General Public License 00015 along with this program. If not, see http://www.gnu.org/licenses/ . 00016 */ 00021 #ifndef INCLUDED_SDSL_SELECT_SUPPORT_DUMMY 00022 #define INCLUDED_SDSL_SELECT_SUPPORT_DUMMY 00023 00024 #include "int_vector.hpp" 00025 #include "select_support.hpp" 00026 #include <string> 00027 #include <iostream> 00028 00029 //#define SDSL_DEBUG_SELECT_SUPPORT_JMC 00030 00031 #ifdef SDSL_DEBUG_SELECT_SUPPORT_DUMMY 00032 #include "testutils.hpp" 00033 #endif 00034 00036 namespace sdsl 00037 { 00038 00039 00041 00044 class select_support_dummy : public select_support 00045 { 00046 public: 00047 select_support_dummy(const int_vector<1>* v=NULL); 00048 select_support_dummy(const select_support_dummy& ss); 00049 ~select_support_dummy(); 00050 void init(const int_vector<1>* v=NULL); 00052 00054 inline const size_type select(size_type i) const; 00056 inline const size_type operator()(size_type i)const; 00057 size_type serialize(std::ostream& out, structure_tree_node* v=NULL, std::string name="")const; 00058 void load(std::istream& in, const int_vector<1>* v=NULL); 00059 void set_vector(const int_vector<1>* v=NULL); 00060 select_support_dummy& operator=(const select_support_dummy& ss); 00061 00063 void swap(select_support_dummy& ss); 00065 00069 bool operator==(const select_support_dummy& ss)const; 00071 bool operator!=(const select_support_dummy& ss)const; 00072 }; 00073 00074 00075 00076 } 00077 00078 #endif