Resolve Bundle Manager Input/Output label ambiguity
[ardour.git] / libs / ptformat / ptfformat.h
index 1d3dac2ba35b8ed66425b21864c13473fed8c629..3a702aa10bd257246f1fd21475c2c8d217861252 100644 (file)
@@ -32,24 +32,24 @@ public:
        */
        int load(std::string path, int64_t targetsr);
 
-       typedef struct wav {
+       struct wav_t {
                std::string filename;
                uint16_t    index;
 
                int64_t     posabsolute;
                int64_t     length;
 
-               bool operator <(const struct wav& other) {
+               bool operator <(const struct wav_t& other) const {
                        return (strcasecmp(this->filename.c_str(),
                                        other.filename.c_str()) < 0);
                }
 
-               bool operator ==(const struct wav& other) {
+               bool operator ==(const struct wav_t& other) const {
                        return (this->filename == other.filename ||
                                this->index == other.index);
                }
 
-       } wav_t;
+       };
 
        typedef struct region {
                std::string name;
@@ -113,12 +113,13 @@ public:
        unsigned char c0;
        unsigned char c1;
        unsigned char *ptfunxored;
-       int len;
+       uint64_t len;
 
 private:
        bool foundin(std::string haystack, std::string needle);
-       void parse(void);
+       int parse(void);
        void unxor10(void);
+       void unxor_ptx_to_ptf(void);
        void setrates(void);
        void parse5header(void);
        void parse7header(void);
@@ -130,7 +131,8 @@ private:
        void parserest10(void);
        void parseaudio5(void);
        void parseaudio(void);
-       void resort(std::vector<wav_t> *ws);
+       void resort(std::vector<wav_t>& ws);
+       uint8_t mostfrequent(uint32_t start, uint32_t stop);
        std::vector<wav_t> actualwavs;
        float ratefactor;
        std::string extension;