00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #if !defined( COMPRESS_H )
00023 #define COMPRESS_H
00024
00025 #include "classad/classad_stl.h"
00026 #include "classad/classad.h"
00027
00028 BEGIN_NAMESPACE(classad)
00029
00030 class ClassAdBin
00031 {
00032 public:
00033 ClassAdBin( );
00034 ~ClassAdBin( );
00035
00036 int count;
00037 ClassAd *ad;
00038 };
00039
00040 typedef classad_hash_map< std::string, ClassAdBin* > CompressedAds;
00041
00042 bool MakeSignature( ClassAd *ad, References &refs, std::string &sig );
00043 bool Compress( ClassAdCollectionServer *server, LocalCollectionQuery *query,
00044 const References &refs, CompressedAds& comp,
00045 std::list<ClassAd*> &rest);
00046
00047 END_NAMESPACE
00048 #endif